İki makine arasında güvenilir olmayan bir ağ bağlantım var: bazen etkin TCP bağlantıları kontrolüm dışındaki nedenlerden dolayı kesiliyor. İki makine arasında güvenilir bir TCP bağlantısı kurmak istiyorum .
Ağ güvenilir olsaydı ssh -L 1234:localhost:1234 remotehost
, sunucu 1234 numaralı bağlantı noktasını dinleyerek çalışırdım remotehost
ve istemciyi işaret ederdim localhost:1234
. Ancak ssh bağlantısı koparsa, iletilen bağlantı da aynı şekilde olur. İstemci ile sunucu arasındaki bağlantıyı otomatik olarak nasıl geri yükleyebilirim?
Sigara çözümleri:
- Bu etkileşimli uygulamalar için değildir, bu nedenle ekran geçerli değildir.
- Bu sadece bir SSH tünelini otomatik olarak yeniden bağlamakla ilgili değil, la autossh . Aynı tünel TCP bağlantısını kullanmaya devam etmek istiyorum, yeni bir bağlantı başlatmayın.
- Prensip olarak, bir VPN hile yapar. Ama sadece bir TCP bağlantısı istediğimde aşırıya kaçmış gibi görünüyor ve her iki tarafta da kök izinleri olmasa bile çalışan bir çözüm istiyorum.
Sadece bunu yapan bir programın karanlık bir anısına sahibim rocks
, ama web'in yüzünden düşmüş gibi görünüyor. Çoğunlukla her iki taraftaki Linux'la ilgileniyorum (bu seviyedeki bir programın diğer unices için taşınabilir olmasını beklesem de), ancak QNX ve VMS arasında çalışan bir program biliyorsanız, hepsi daha iyi.
scp
. Bağlantı noktası yönlendirme örneğinize dayanarak w / ssh keepalives'e yanıt veriyordum. Re: lapa lapa akış aşağı hop, yapabileceğiniz pek bir şey yok, başka daha hoşgörülü olan keepalives ile bir ssh oturumu oluşturmak dışında (yani ServerAliveInterval > 0
ve ile daha fazla bırakılan keepalives izin ServerAliveCountMax > 3
). NAT daha düşük tutma aralıkları gerektirir. Ana sorun, sorunun ne olduğunu belirlemek ve buna göre uyarlamaktır. Seçenekleri .ssh/config
her zaman sizin için orada olacak şekilde koyun
rocks
uygulama için umut etmekten daha fazlasını yapamazsınız ... Her ne kadar bu gerçek bir çamur olsa da