如何更改 Cisco Anyconnect VPN 的 MTU?

如何更改 Cisco Anyconnect VPN 的 MTU?

在我的 macOS 10.15 上我必須使用Cisco AnyConnect 安全行動用戶端 4.8連接到我大學的 VPN。

連線速度比平常慢很多,可能是因為 1300 的 MTU 設定得太低。

使用命令ifconfig,我得到有關連接的資訊:

utun2: flags=80d1<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1300
    inet ###.###.##.## --> ###.###.##.## netmask 0xfffffe00 
    inet6 ###::####:###:###:###%utun2 prefixlen 64 scopeid 0x10 
    inet6 ###:####:#:#::### prefixlen 128 
    nd6 options=201<PERFORMNUD,DAD>

(IP 位址已用 # 進行匿名化)

我怎樣才能改變這個?我在 Cisco 用戶端的設定中找不到任何內容,甚至在設定檔中也沒有找到。

更改系統設定是沒有用的,透過終端機我嘗試了以下操作: sudo ifconfig utun2 mtu 1470

然後使用該命令顯示正確的值ifconfig,但連接本身沒有改變(速度和此處顯示的 MTU 值都沒有改變)https://www.speedguide.net/analyzer.php)。重新連線後,MTU 再次註冊為 1300。

如何有效且永久地更改 MTU?

答案1

由於 VPN 封裝會增加封包的額外開銷,因此將最大傳輸單元減少到低於標準 1500 位元組乙太網路訊框 MTU 有助於確保封裝的封包不會分段。

若要檢查資料包碎片,ping可以使用「不分段」開關。

在我的 MacOS High Sierra 版本上ping,我可以使用以下選項指定掃描大小:

nevin% ping -g 1200 -G 1500 -D <remote host>

這給出了結果:

1472 bytes from x.x.x.x: icmp_seq=64 ttl=48 time=108.894 ms 556 bytes from 192.168.2.1: frag needed and DF set (MTU 1492) Vr HL TOS Len ID Flg off TTL Pro cks Src Dst 4 5 00 d505 f712 0 0000 40 01 2739 192.168.2.111 x.x.x.x

我的 en0 MTU 是 1500,但上面的回應是我的路由器的 MTU 是 1492。

「路徑 MTU 發現」將嘗試將封包大小保持在兩個主機之間任何連結的碎片閾值以下,儘管當 ICMP 沿途未被封鎖時,此方法效果最佳。 (如果您剛開始丟失資料包而沒有任何錯誤訊息,則 ICMP 在某個上游點被阻止,這可能是速度慢的原因:遠端主機發送的資料包可能大於本地 MTU,但沒有收到錯誤告訴它縮減規模。

簡而言之,嘗試增加 MTU 的大小不會提高效能。

相關內容