我有兩台機器:
- Windows 7 透過乙太網路連接到路由器
- NixOS 筆記型電腦,無線連接到同一路由器
我的問題是從 Windows 到 NixOS 的 sshing 非常緩慢。如果我從 Windows ping NixOS,我得到的時間約為 100 毫秒 - 200 毫秒。如果我從 NixOS 執行反向 ping Windows,我得到的時間 < 10 毫秒。
NixOS 是最近安裝的。在此之前,我有 Arch Linux,它沒有遇到同樣的問題。我不記得有任何其他變化。
此外,我可以透過 ssh 連線到不在 LAN 上的遠端伺服器。從 Windows 或 NixOS 到遠端伺服器的 SSH 沒有任何延遲問題。
我已經嘗試過以下方法:
- 在 sshd 的配置中設定此選項:
UseDNS no
- 將我的名稱伺服器設定為
8.8.8.8
然而,這些並沒有幫助(似乎是一個比 sshd 更低等級的問題)
我的問題:我需要做什麼才能阻止 SSH 延遲?
答案1
我發現這個線程,建議以 root 身分執行以下命令:
iw wlp2s0 set power_save off
我在我的 NixOS 機器上運行了這個。這將關閉 wifi 網路設備的省電功能wlp2s0
。如果您有不同名稱的裝置(例如wlan0
),則需要使用該名稱。
SSH 現在的反應速度更快,ping 時間也回落至 < 5 毫秒。
答案2
由於這也是一個與 Nix 相關的問題,因此當我也遇到這個問題時,我會投入兩分錢。
我正在使用網路管理器,因此可以透過設定以下配置來停用 wifi 節能:
networkmanager.wifi.powersave = false;
因為wpa_supplicant
我覺得應該是下面的配置,但我沒有親自測試過:
networking.wireless.extraConfig = ''
power_save=0
'';