Lalu lintas SSH melalui koneksi openvpn membeku ketika saya menyimpan file

13

Saya memiliki pengaturan koneksi openvpn (versi 2.1_rc15 di kedua ujungnya) antara dua kotak gentoo menggunakan kunci bersama. itu berfungsi dengan baik untuk sebagian besar. Saya menggunakan mysql, http, ftp, scp atas vpn tanpa masalah. Tetapi ketika saya ssh dari klien ke server melalui vpn, hal-hal aneh terjadi. Saya bisa masuk, saya bisa menjalankan beberapa perintah. Tetapi jika saya mencoba menjalankan aplikasi ncurses seperti atasan, atau saya mencoba membuat file, koneksi akan macet dan saya harus memutuskan sesi ssh.

Saya dapat, misalnya, menjalankan "echo bla; echo.; Echo bla" dan itu akan menampilkan tiga baris teks melalui denda sesi ssh. Tetapi jika saya mengeksekusi "cat / etc / motd" sesi akan membeku saat saya menekan enter.

Saya mengkompilasi openvpn 2.1.1 pada mac saya dan menyalin direktori config saya dari klien gentoo saya. Mac terhubung dan sesi ssh bekerja dengan baik tanpa pembekuan.

Saya kemudian mengompilasinya pada kotak gentoo lama saya (kernel 2.6.26) yang saya pensiun karena hard drive yang sekarat, dan ssh di atasnya juga berfungsi dengan baik.

Mengapa itu gagal pada kotak gentoo baru saya? Saya sudah mencoba mengkompilasi tiga kernel yang berbeda jika itu adalah itu, tetapi selain itu seharusnya tidak ada perbedaan antara kotak gentoo saya yang lebih lama dan yang lebih baru yang dapat saya pikirkan.

Ada saran tentang apa yang salah?

Pawz Lion
sumber
Dalam kasus saya, ssh, cat, top& HTTP semua bekerja, tapi scptidak (hal itu akan menunjukkan 100% ditransfer dan menggantung di sana). Menurunkan MTU ke 1380 memperbaikinya.
Roger Dueck

Jawaban:

13

baunya seperti masalah mtu. coba turunkan seperti yang dijelaskan dalam manual resmi atau di posting blog ini .

pQd
sumber
2
Terima kasih. Saya telah mencoba menjatuhkan MTU dari antarmuka ethernet tanpa hasil, tetapi menambahkan "fragmen 1400" ke klien dan server seperti pada posting yang Anda sebutkan bekerja sangat baik. Saya bertanya-tanya mengapa kotak gentoo yang lebih tua berfungsi dengan baik tetapi yang baru tidak. Oh well, perbaiki sekarang. Terima kasih
Pawz Lion
Terima kasih. Ini memperbaiki masalah saya. Di kantor saya memiliki setup yang sama persis tanpa masalah, tetapi di rumah saya, ada beberapa kasus hang. Jika saya menggulung url file dengan a - di dalamnya, itu hang. Tanpa -, berfungsi: D, dan jika saya memecah baris panjang dalam file, itu juga berfungsi. Tidak masuk akal, tetapi terima kasih atas solusinya.
Peter
1
Perhatikan opsi mtu-test openvpn yang disebutkan dalam posting blog yang terhubung di atas. Ini secara empiris akan menguji mtu dari terowongan openvpn Anda sehingga Anda tahu nilai apa yang digunakan ketika mengatur fragmen dan perbaikan mss dan tidak hanya menebak. Saya melihat banyak posting di pengaturan internet mtu / fragmen ke 1400, 1350, 1200, dll. Tetapi ketika saya benar-benar menjalankan mtu-test, openvpn menentukan MTU menjadi 1189!
jdhildeb
7

Perintah ini menyelesaikannya untuk saya:

$ sudo ip link set dev tun0 mtu 1350 && echo ":)"

Anda dapat Memverifikasi pengaturan tun0 dengan

$ ip a s

Bersulang!

Sebastián A. La Spina
sumber
1

Saya memiliki masalah serupa ketika OpenVPN menghubungkan lebih dari 3g dengan cakupan buruk dan kehilangan paket yang hilang. Beralih ke TCP alih-alih UDP memperbaiki semua masalah yang saya miliki setelah itu. Semoga ini bisa membantu Anda.

valentt
sumber
Menjalankan VPN melalui TCP hadir dengan serangkaian masalahnya sendiri. Memperbaiki masalah MTU dan tetap menggunakan UDP kemungkinan akan bekerja lebih baik daripada menggunakan TCP.
kasperd
Untuk mengubah OP hanya MTU mungkin saran yang lebih baik daripada mengubah dari TCP ke UDP. Jika Anda memiliki yang sangat buruk, sangat buruk sehingga OpenVPN bahkan tidak akan membuat koneksi koneksi yang stabil, maka Anda harus mencoba TCP daripada UDP. Dalam kasus 3G yang sangat buruk, berubah menjadi TCP adalah satu-satunya hal yang berhasil bagi saya.
valentt
1

Yap, ini semua tentang MTU.

Tapi dalam kasus saya, saya punya masalah yang lebih aneh. Di rumah, menggunakan klien OpenVPN Windows membeku. Tetapi di kantor saya itu berfungsi dengan baik.

Saya mencoba mengubahnya di Modem ADSL saya tanpa hasil. Di Kantor saya, saya menggunakan modem kabel dan ISP lainnya.

Setelah mengubah MTU adaptor Windows TAP ke 1200, itu berfungsi dengan baik. Sesuatu yang tinggi dari itu, akan membeku untukku.

masukkan deskripsi gambar di sini

Luiz Vaz
sumber
0

Saya menggunakan tunnelblick daripada OpenVPN, dan saya tidak bisa menemukan konfigurasi untuk nilai MTU. Sebagai gantinya, saya menemukan antarmuka untuk VPN di output ifconfig(dalam kasus saya itu utun0) dan mengatur MTU untuk itu secara manual seperti:

ifconfig utun0 mtu 576

Setelah itu, sesi ssh saya tidak akan membeku lagi.

Zoltán
sumber