VNC melalui terowongan SSH: saluran 3: buka gagal: koneksi gagal: Tidak ada rute untuk dihosting

3

Saya dulu terhubung dari A ke sistem B melalui VNC dengan SSH tunnel via C.

Saya melakukan hal berikut:

  1. Di BI mulai vncserver:

    vncserver
    

    dan katakanlah saya mendapatkan: 12

  2. Di AI buka ssh tunnel:

    ssh -v -C -L 5912:B:5912 user@C
    
  3. Dalam AI, mulailah klien vnc saya:

    vinagre localhost:12
    

Tapi ini tidak berfungsi lagi, karena ketika saya memulai vinagre di terminal yang terkait dengan ssh-tunnel saya, saya mendapatkan:

channel 3: open failed: connect failed: No route to host

Saya tahu bahwa ada beberapa masalah dengan sistem minggu lalu, tetapi saya tidak tahu apa yang telah berubah (saya bukan administrator komputer), mungkin alamat ip telah diubah tetapi saya telah menghapus

~/.ssh/know_hosts

jadi untuk menghindari masalah. Saya sangat menghargai bantuan atau petunjuk

Saya telah memeriksa apakah self-vnc berfungsi, dengan menjalankan

vncviewer localhost:12

pada sistem B

Saya telah melakukan beberapa tes, dan saya telah menemukan bahwa jika saya mencoba untuk tunnel dan terhubung ke sesi yang dibuka oleh pengguna lain (dengan nomor lain, seperti: 6) Saya dapat terhubung dengan sukses: dalam arti bahwa tentu saja saya tidak dapat login karena saya tidak memiliki kata sandi yang benar, tetapi setidaknya klien vnc meminta kata sandi, apalagi saya tidak melihat pesan 'no route to host'. Apa artinya itu? Sepertinya vnc ini tidak berfungsi hanya pada beberapa port, bukan ?.

Rupanya manajer sistem mengatur kisaran port vnc yang dapat diakses 5900-5910, tetapi server VNC memberi saya nomor port yang jauh di atas nilai ini.

simona
sumber
1
perlu dicatat re-C (kompresi) dari man ssh "Kompresi diinginkan pada jalur modem dan koneksi lambat lainnya, tetapi hanya akan memperlambat hal-hal pada jaringan cepat."
barlop
@barlop OK, terima kasih. Saya kira itu karena menambah overhead mengompresi data pada klien
simona
Apa pun alasannya, hanya mengatakan itu menambah overhead (seperti yang Anda lakukan), akan (bertentangan dengan apa yang Anda pikirkan), tidak menjelaskan kutipan yang menyebutkan tentang jaringan cepat dan lambat.
barlop

Jawaban:

1

Hanya pembaruan cepat mengapa port Anda berada di luar rentang port itu - Ketika vncserver dimulai, nomor port yang Anda tetapkan adalah 5900 + N, dengan N adalah nomor server VNC yang dikembalikan. Contoh:

vncserver
New 'localhost:1' desktop is localhost:1

Dalam hal ini port Anda akan menjadi 5901. Dalam contoh Anda, server Anda menggunakan 5912, yang berada di luar kisaran port Anda.

Byob
sumber
0

Ada kemungkinan bahwa memang server VNC memberikan nomor port tinggi di luar rentang yang diizinkan dalam firewall, seperti ditunjukkan oleh pertanyaan yang diedit dan jawaban Byob.

Namun, masih ada kemungkinan karena telah terjadi kepada saya bahwa memang ada kesalahan routing di suatu tempat seperti tabel routing mesin host atau router mungkin. Ada percakapan yang relevan di grup Google :

Routing untuk workstation target berbeda antara kedua sistem (...). Kesalahan (...) akan berada di router atau di workstation, dan itu akan menjadi kesalahan kelalaian (Anda telah kehilangan rute di tabel routing Anda) atau superimposisi (Anda telah menambahkan rute yang salah ke tabel perutean).

Juga pastikan bahwa Bmemang terjangkau.

Wtower
sumber
0

Rupanya manajer sistem mengatur kisaran port vnc yang dapat diakses 5900-5910, tetapi server VNC memberi saya nomor port yang jauh di atas nilai ini.

simona
sumber