MTU (Max Tranmission Unit) là đơn vị truyền tải dữ liệu lớn nhất của modem, nếu MTU càng lớn thì modem truyền dữ liệu càng nhiều. Giá trị MTU lớn nhất là 1500. Thông thường ADSL thường tương thích với MTU 1492.
1. Không vào được speedtest khi dùng VPN PPTP
Hôm nay mình có thử kết nối VPN PPTP trên windows 10, tuy nhiên không thể kết nối được. Mình thử ping thì các kết quả đều khá bình thường.
Mình đã thử Set DNS google cho mạng những vẫn không được.
Sau đó mình kiểm tra trực tiếp trên VPS triển khai PPTP VPN thì thấy vẫn vào được. Điều này khá lạ là trước giờ mình chưa gặp bao giờ.
Tuy nhiên khi thử kết nối VPN trên điện thoại Android và sử dụng Ubuntu thì mọi thứ lại kết nối rất bình thường.
Mình quyết định tìm hiểu trên các diễn đàn nước ngoài thì họ chỉ ra một số vấn đề liên quan đến MTU. Sau đó mình thử lệnh sau
a. Thử giá trị MTU 1400 Khi không kết nối VPN
Sử dụng lệnh
ping speedtest.net -f -l 1400
Sau đó mình nhận được phản hồi như sau
Pinging speedtest.net [151.101.128.230] with 1400 bytes of data: Reply from 151.101.128.230: bytes=1400 time=274ms TTL=53 Reply from 151.101.128.230: bytes=1400 time=273ms TTL=53 Reply from 151.101.128.230: bytes=1400 time=275ms TTL=53 Reply from 151.101.128.230: bytes=1400 time=273ms TTL=53 Ping statistics for 151.101.128.230: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 273ms, Maximum = 275ms, Average = 273ms
Với phản hồi này vẫn truy cập bình thường.
b. Thử giá trị MTU 1400 Khi kết nối VPN
Sử dụng lệnh
ping speedtest.net -f -l 1400
Sau đó mình nhận được phản hồi như sau
Pinging speedtest.net [151.101.0.230] with 1401 bytes of data: Packet needs to be fragmented but DF set. Packet needs to be fragmented but DF set. Packet needs to be fragmented but DF set. Packet needs to be fragmented but DF set. Ping statistics for 151.101.0.230: Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
Với kết quả như trên thì không thể truy cập mạng, các gói dữ liệu gửi đi đều không thể nhận được.
Giải pháp lúc này mình set MTU là 1372.
2. Thay đổi giá trị MTU windows 10 khi không vào được mạng
a. Xem các giá trị MTU hiện tại
netsh interface ipv4 show subinterfaces
Minh họa kết quả
MTU MediaSenseState Bytes In Bytes Out Interface ------ --------------- --------- --------- ------------- 1500 1 79649426 14497661 us vpn 4294967295 1 0 9755 Loopback Pseudo-Interface 1 1500 1 532994445 55966183 Wi-Fi 1500 5 0 0 Ethernet 1500 5 0 0 Local Area Connection* 1
b. thay đổi giá trị MTU
Sau khi có kết quả ở mục trên mình tiến hành Set lại giá trị MTU cho VPN Interface “us vpn”
netsh interface ipv4 set subinterface "us vpn" mtu=1372 store=persistent
Bạn thay us vpn thành tên Interface phù hợp
Nếu phản hồi “Ok” là bạn đã thành công, còn nếu “The filename, directory name, or volume label syntax is incorrect.” Thì bạn hãy kiểm tra lại tên Interface cho chính xác.