Làm cách nào để kiểm tra giá trị MTU cho kết nối hiện tại của tôi?
Trong cài đặt kết nối mạng của tôi, MTU được đặt thành tự động và tôi muốn biết giá trị nào được chọn tự động cho nó.
Làm cách nào để kiểm tra giá trị MTU cho kết nối hiện tại của tôi?
Trong cài đặt kết nối mạng của tôi, MTU được đặt thành tự động và tôi muốn biết giá trị nào được chọn tự động cho nó.
Câu trả lời:
ifconfig
để xem MTU hiện tại. Ví dụ (chỉ tìm kiếm MTU):
ifconfig| grep -i MTU
UP BROADCAST MULTICAST MTU:1500 Metric:1
UP LOOPBACK RUNNING MTU:65536 Metric:1
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Phương pháp thay thế:
ip addr | grep mtu
Ví dụ:
ip addr | grep mtu
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
2: enp0s31f6: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1300 qdisc fq_codel state UP group default qlen 1000
3: wlp4s0: <BROADCAST,MULTICAST> mtu 1500 qdisc mq state DOWN group default qlen 1000
4: veth0@if5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc noqueue state UP group default qlen 1000
ipconfig
.
ip addr
thay vì ip ad
. Mặc dù viết tắt là có thể, tôi nghĩ tốt hơn là sử dụng tên đầy đủ trong câu trả lời.
ipconfig
có thể là "phổ biến", nhưng nó cũng không được chấp nhận - lý do thực sự khiến nó bị loại bỏ IMO :) Nó có thể bỏ sót thông tin quan trọng, chẳng hạn như IP thứ cấp; IIRC phương thức mà nó sử dụng để giao tiếp với kernel (ioctls) giới hạn số lượng dữ liệu có thể được gửi, trong khi các công cụ iproute2
sử dụng một phương thức khác (netlink) với giới hạn cao hơn nhiều.
Bạn có thể đọc giá trị từ /sys
hệ thống tệp kernel:
cat /sys/class/net/<interface>/mtu
Thay thế <interface>
bằng tên của giao diện để truy vấn.
mtu
khôngMTU
. Đề nghị grep theo cách không phân biệt chữ hoa chữ thườnggrep -i
.