MTU值导致网络不通的原因是什么

一、apt update 执行失败
问题描述
docker安装后,里面没有ping、ifconfig等命令,执行apt update时,网络错误。
解决思路
排除网络链路,工具:tcpdump -i 指定端口 -vv。分析包数据:发现能够正常进行114dns的解析,但后续包接续不上。
docker内设置的mtu值太大,导致网络链路中丢弃。解决方法
修改mtu值,原来是1500,改为1450,便可以执行apt update命令了。
二、小知识
mtumtu(maximum transmission unit,最大传输单元),是网络链路节点的管控值。大于该值的数据帧,或分片,或丢弃。
例如:vm -- 物理服务器 -- 路由器 -- 服务器
vm的mtu设置如果为1700,链路其他设备都设置为1500。路由器接收后,会对其分包或者直接丢弃,判断的依据是ip包df标志位,为1则不允许分包。
tcpdump抓包指令tcpdump是一种网络分析工具,可以将数据包的“头”截获。
常用的命令:
tcpdump -i 指定端口 -vv-i,指定网络端口,如eth0, ens,lo
-vv 输出详细的报文信息
示例:
12:12:09.782698 ip (tos 0x0, ttl 62, id 39791, offset 0, flags [df], proto tcp (6), length 52) 10.168.16.15.42204 > .5901: flags [.], cksum 0x700f (correct), seq 774, ack 10624633, win 13508, options [nop,nop,ts val 2029593093 ecr 1866739405], length 012:12:09.782803 ip (tos 0x0, ttl 62, id 39792, offset 0, flags [df], proto tcp (6), length 52) 10.168.16.15.42204 > .5901: flags [.], cksum 0x5472 (correct), seq 774, ack 10631623, win 13587, options [nop,nop,ts val 2029593093 ecr 1866739405], length 012:12:09.782853 ip (tos 0x0, ttl 62, id 39793, offset 0, flags [df], proto tcp (6), length 52) 10.168.16.15.42204 > .5901: flags [.], cksum 0x394c (correct), seq 774, ack 10638613, win 13547, options [nop,nop,ts val 2029593093 ecr 1866739405], length 012:12:09.782904 ip (tos 0x0, ttl 62, id 39794, offset 0, flags [df], proto tcp (6), length 52) 10.168.16.15.42204 > .5901: flags [.], cksum 0x1daf (correct), seq 774, ack 10645603, win 13626, options [nop,nop,ts val 2029593093 ecr 1866739405], length 0

成本降低70%!国产高压GaN又有新成果
芯北科技同步降压转换器CN2020在制氧机上的应用
联想Z5拍照怎么样
据调查目前70%的全球受访企业未将提升女性地位列为业务重点
气密检漏仪:优质产品的保证
MTU值导致网络不通的原因是什么
支持的JSON数据选项介绍
华为荣耀8:双面玻璃,双摄像头,今年最美的华为手机还是它
小米手环4曝光_新增彩屏显示
Stream API原理介绍
华为鸿蒙现在最需要什么?
中国企业85%数据中心PUE值在1.5至2.0
服务引爆市场,可穿戴设备能走多远?
Arduino怎样连接到电视以显示文本信息和图形
小米正式发布小爱音箱和小爱音箱Pro 售价分别为269元和299元
基于WDF的驱动开发
声扬科技荣登2023广东人工智能风云榜
A型N20减速箱制作方法
风向标携手汉威展开长期战略合作
如何利用51单片机同时扩展RAM和ROM