Linux, boş SSH bağlantılarını zaman aşımına uğratmaz. Bir SSH bağlantısını süresiz olarak açık bırakabilirsiniz ve hiçbir uç nokta yeniden başlatılmadığı veya yeni bir IP adresi almadığı sürece, uzun bir boşta kaldıktan sonra bağlantıya eriştiğinizde bağlantı yine de çalışır.
Ancak, durum bilgisi olan orta kutular (NAT, güvenlik duvarı, vb.) Bunun sonucu, bağlantı her iki uçta da canlı olmasına rağmen, orta uç SSH istemcisi yeni bir bağlantı açılana kadar herhangi bir paketi iletmeyi reddettiği için iki uç nokta artık iletişim kuramaz.
Eğer middlebox zaman aşımı biliyorsanız, yapılandırarak sorunu çalışabilirsiniz ClientAliveIntervaliçinde /etc/ssh/sshd_configsunucusunda veya ServerAliveIntervaliçinde ~/.ssh/configistemci üzerinde. Kopuk bağlantıların en iyi şekilde algılanması için her iki ayarın da etkinleştirilmesi önerilir. Bu, uç noktalardan biri yeniden başlatıldığında veya yeni bir IP adresi aldığında da kesilen bağlantıları algılar.
Zaman aşımının bazen birkaç saniye kadar düşük göründüğünü belirttiğiniz için, bu sorununuzu çözmek için yeterli olmayabilir. Çok düşük bir görünür zaman aşımı aşırı yüklenmiş veya yanlış yapılandırılmış bir CGN'den kaynaklanabilir. Bir CGN'nin hatalardan sorumlu olup olmadığını anlamak için iletişim yolunun çeşitli noktalarındaki trafiği kontrol etmeniz gerekir.
Hataların, ISS'nizin bağlantı durumunu paylaşmayan birden fazla CGN üzerinden yük dengeleme bağlantıları gibi aptalca bir şey yapmasından kaynaklandığı ortaya çıkarsa, SSH yapılandırmanızı değiştirerek sorunu kendiniz çözemezsiniz.
Düzeltmeyi reddettikleri güvenilir olmayan bir CGN'ye sahip bir ISS ile sıkışıp kalırsanız, bildiğim tek seçenek hem istemci hem de sunucuyu MPTCP desteği olan çekirdek sürümlerine yükseltmek veya kendiliğinden tolere etmek için tasarlanmış bir tünel çözümü kullanmaktır. NAT üzerindeki bağlantı noktası eşlemelerindeki değişiklikler.