用DHCP来自动配置MTU

DHCP服务与配置 DHCP简析 阅读详情

From: http://blog.chinaunix.net/u3/106587/showart_2112287.html

 

MTU即最大传输单元,在联网时有着关键的作用,如果发现有的网站上不去了,或者传不了大的文件,有可能是MTU 的值设置有问题。比如客户端 PC 设置的 MTU 是 1500 ,而网关允许的 MTU 是 1400 ,那对于包长在 1400 到 1500 之间的包, PC 不会主动去分段( IP fragment ),网关收到这样的包就传丢弃了。而如果把客户端 PC 的 MTU 值改为 1400 ,对于大于 1400 的包, PC 会主动作分段处理,保证每个包长都是小于等于 1400 的,网关就可以正常转发了。

 

MTU 的设置通常有两种方法,一是静态手工配置。比如在 linux 上,可以用一句简单的命令 ifconfig eth0 mtu 1400 来搞定。在 windows 上,可以修改注册表,通常是在 HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters/Interfaces/{adapter}/ 下面新建一个 , 名为 MTU 的 DWORD 值。

还一种方法就是在通过 dhcp 请求地址的时候,顺便请求 MTU 的值。下面这个实验就是针对这种情况。

Topology:


              PC1(DHCP client)----------------PC2(DHCP server)


这两台 client 和 server 都是运行在虚拟机里的, client 是 CentOS 5.3, server 是 windows2000 server 。

 

PC1(CentOS) 默认会安装 dhclient ,这是一个 dhcp 客户端程序。常见命令:

dhclient –r # 释放 IP 地址

dhclient 获得 IP 地址。

配置文件: /etc/dhclient.conf ( 默认可能没有,可以新建这个文件 )

interface "eth0" {

  send dhcp-lease-time 86400;

  request subnet-mask, broadcast-address, time-offset, routers,

        domain-name, domain-name-servers, host-name, interface-mtu;

}

 

PC2(win2k server) 就使用自带的 DHCP 服务器。在服务器选项里,可以找到很多的 dhcp option ,其中 option 26 是给 MTU 用的,勾上这一项,并把值配为 0x4B0 ,即 1200.

 

实验步骤:

1.       server 和 client 都正常配置了 mtu 选项的情况:

Client 运行 dhclient 后,抓包发现 , 在 dhcp discover 和 dhcp request 中, option 55(parameter request list) 中,会有一项 26 ,表明请求 interface MTU. 相应的,在 server 回的 dhcp offer 和 dhcp ack 中,也有一项 Option 26, (1a 02 04 b0) , 1a 是 option 类型 ( 即 26), 02 是长度, 04b0 是 MTU 大小。


 

在 linux 上,用 ifconfig 查看, MTU 果然是 1200.

 

2.       如果在 linux 上把 dhclient.conf 中的 request interface-mtu 去掉,先释放 IP ,再获取 IP, 发现 client 和 server 发的包中都不会含与 MTU 相关的 option. 表明在 dhcp server 上配置的 MTU 是不会强推给 client 的,只有当你去请求时,才会下发 MTU 值。

3.       如果 linux 客户端包含了 request interface-mtu ,而 server 端并未配置 option 26, 则在客户端发出的 discover 和 request 的 option55 中会包含 request mtu ,但在 server 回的包中不会包含 mtu 。在这种情况下, linux 端口会保留上次得到的 MTU 值,除非手工去更改。

 

上述实验表明,要想通过 DHCP 配置 MTU ,必须要在 client 和 server 上都有 option26 的相关配置才行。

 

另外 1 , Linux 上的 dhcp 服务器也可以配置 MTU 选项。如在 CentOS 中,编辑 /etc/dhcpd.conf , 加入一行:

option interface-mtu 1200;

然后重启 dhcpd 服务, service dhcpd restart 。


另外 2, 配置了 MTU 后如何验证是否生效呢,可以用 ping IP –l 1300 –f 来验证,要么 ping 通,或者提示需要分段。

 

另外3, dhcp client和dhcp server的配置文件例子:

/usr/share/doc/dhclient-3.0.5/dhclient.conf.sample

/usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample

 

发表于: 2009-12-06,修改于: 2009-12-06 18:08

简单写写网络传输中mtu值的作用 mtu值简介 阅读详情

相关推荐

思科MPP IP话机自动配置与升级实战指南

IP话机自动配置是VoIP部署中的关键技术,通过DHCP+TFTP协议实现零接触部署。其核心原理是利用DHCP Option 66传递TFTP服务器地址,话机启动时自动下载配置文件完成初始化。这种方案大幅提升部署效率,特别适合3905等思科MPP话机的批量部署场景。在企业通信系统中,自动配置技术能与Asterisk、FreePBX等主流SIP平台无缝集成,实现从网络配置到SIP注册的全流程自动化。通过标准化SEP配置文件和固件升级策略,工程师可以快速完成数百台话机的部署,同时确保配置一致性和系统安全性。

weixin_42525582的博客 76

DHCP(四)

条件匹配:在MA网络中,如果所有设备都建立邻接关系,则将出现大量的重复更新,所以进行DR /BDR选举,所有。[r1-ospf-1]peer 12.0.0.2 --- 单播建邻 --- 注意:建立邻居一定是双向的。ASBR --- 自治系统边界路由器 --- 只有执行了重发布的设备,才能被称为ASBR --- 同时。备份指定路由器 --- BDR --- 在MA网络中,BDR和其余所有设备间建立的也是邻接关系。如果开销值计算结果为小于1的小数,则直接取1,如果是大于1的小数,则直接取整数部分。

m0_65548364的博客 399

Linux: network: dhcp: mtu 这个里面也有关于网卡的MTU设置;

假如在网卡的配置文件中设置了dhcp获取IP信息,可能导致这个网卡的MTU设置会跟着dhcp中的走,而不是网卡的配置信息。这个脚本就是先设置MTU,然后再做dhcp的请求,这样就会把mtu的值覆盖掉。MTU=1500 、、、 这个值可能会被 覆盖。需注意这个DHCP配置选项。

mzhan017的博客 856

dhcp 的option说明

DHCP Options字段选项 DHCP报文中的Options字段 DHCP报文中的Options字段可以用来存放普通协议中没有定义的控制信息和参数。如果用户在DHCP服务器端配置了Options字段,DHCP客户端在申请IP地址的时候,会通过服务器端回应的DHCP报文获得Options字段中的配置信息。Options字段的格式如图1所示。 图1 Options字段的格式 ...

weixin_33672400的博客 3975

113、Zephyr RTOS网络协议栈基础:IPv4与IPv6

不要相信默认配置。每个项目都要根据实际网络环境调整Kconfig,特别是这些开关。我习惯在项目初期就写一个,把所有网络相关的宏定义集中管理,方便后期移植。尽早做压力测试。用net_ping连续ping 10000次,看有没有丢包;用net_shell的net stats观察错误计数。很多问题在实验室里跑几分钟看不出来,但连续跑一晚上就暴露了。最后,如果条件允许,买一个USB转以太网分析仪(比如Saleae的),直接抓物理层信号。Zephyr的软件日志再详细,也比不上硬件抓包来得直观。

m0_50546716的博客 12

NIDS——suricata(一)

NIDS——suricata环境安装和规则编写

weixin_58666006的博客 1273

IPv6 vs IPv4使用差异说明

IPv6 vs IPv4使用差异说明

超哥的博客 2763

YonBIP 3.0 报表开发+报表超链接

用友报表开发

m0_55096250的博客 1757

网络小课堂

路由器的工作原理:若PC1试图与PC2进行联系,在知道对方IP的情况下,将会先进行子网掩码的判断,若在同一范围,则通过APR获取MAC,随后通过交换机转发----完成沟通。[R1]display current-configuration 查看当前所有的配置操作-------查看缓存中的配置------缓存特点(关机既消失)地址---唯一---格式相同------MAC地址----48位二进制构成---以16进制显示----出场既烧录--全球唯一。我们的数据包每经过一个路由器,这个TTL值就会-1。

2301_81350613的博客 560

21、二维卷积层(convolution2dLayer)的全面解析

本文全面解析了二维卷积层(convolution2dLayer)的原理、属性和应用,详细介绍了其在深度学习中的作用及实现方法。文章涵盖创建卷积层的语法、参数设置、算法原理、输入输出格式、优化策略以及实际应用案例,旨在帮助读者更好地理解和应用二维卷积层构建高效的深度学习模型。

red88的博客 315

DaVinci Developer和DaVinci Configurator:AutoSAR开发与配置工具

a. 组件创建:DaVinci Developer允许开发人员创建不同类型的AutoSAR软件组件,如应用软件组件(Application Software Component,SWC)、基础软件组件(Basic Software Component,BSWC)等。除了以上功能,DaVinci Developer和DaVinci Configurator还提供了丰富的文档和代码生成功能,以支持开发人员和配置人员进行文档编写、代码生成和文档浏览等任务。用户可以根据具体需求对软件组件进行灵活的配置。

HmoaAmp的博客 2262

20241101给荣品PRO-RK3566开发板的预置Android13通过DHCP自动配置以太网

很容易知道 荣品PRO-RK3566开发板 的eth0插上网线已经自动获取了/拿到了IP地址:192.168.3.128。20241101给荣品PRO-RK3566开发板的预置Android13通过DHCP自动配置以太网。Microsoft Windows [版本 10.0.22621.3296](c) Microsoft Corporation。通过跑iperf3确认了千兆以太网。也可以上百度/上网了。

南岭笑笑生之家 747

运维系列【仅供参考】:微信版本过低 使用CheatEngine绕过

微信版本过低 使用CheatEngine绕过

weixin_54626591的博客 2133

计算机网络 ICMP与DHCP

目录 ICMP 辅助IP的ICMP 主要的ICMP消息 ICMP目标不可达消息(类型3) ICMP重定向消息(类型5) ICMP超时消息(类型11) ICMP回送消息(类型0、8) 其他ICMP消息 ICMP原点抑制消息(类型4) ICMP路由器探索消息(类型9、10) ICMP地址掩码消息(类型17、18) ICMPv6 ICMPv6的作用 邻居探索 DHCP ...

今天吃了吗的博客 1909

【系统分析师】2025年下半年真题:论文及解题思路

摘要 本文探讨软件测试技术的应用,重点关注静态测试与动态测试的比较。静态测试在不运行程序的情况下,通过审查、走查等方式分析需求、设计文档和代码,能早期发现高层次缺陷,降低修复成本。动态测试通过实际运行程序,使用单元测试、集成测试等方法验证功能性能,是发现运行时错误的唯一途径。二者在缺陷类型、介入阶段和修复成本上具有互补性,建议项目实践中结合使用以提升软件质量。

数据知道的博客 5787

Java与OSG的梦幻联动:深入编译OpenSceneGraph的Java JNI桥梁,开启3D视觉盛宴的奇幻之旅

🔥关注墨瑾轩,带你探索编程的奥秘!🚀🔥超萌技术攻略,轻松晋级编程高手🚀🔥技术宝库已备好,就等你来挖掘🚀🔥订阅墨瑾轩,智趣学习不孤单🚀🔥即刻启航,编程之旅更有趣🚀在编译OpenSceneGraph (OSG) 的Java版本时,首先需要了解OSG本身是一个主要用于3D图形和视觉仿真的开源库,它主要支持C++。然而,OSG 也支持通过JNI(Java Native Interface)与Java集成,这允许Java程序调用OSG的C++库。

java专栏 869

DHCP 服务器

DHCP 服务器摘要 本文介绍了DHCP服务器的基本原理和部署方式。DHCP(动态主机配置协议)可以自动分配IP地址等网络参数,解决了传统手动配置效率低、易出错的问题。其工作过程包括发现、提供、请求和确认四个阶段,采用广播通信机制确保可靠性。DHCP具有提高效率、减少错误和集中管理等优点。文章详细讲解了租期更新机制和多服务器场景处理,并通过华为路由器实例演示了接口地址池的配置方法,包括启用DHCP功能、设置租期、DNS和排除地址等。最后通过抓包验证了DHCP协议的实际工作流程。不同规模网络可选择合适的部署方

zhuyy06的博客 196

YOLO11改进策略【独家融合改进】| EfficientViMBlock + LGAG + DySample

通过学习采样来学习上采样DySample。

Limiiiing的博客 362

DHCP

DHCP报文格式 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是IETF为实现IP的自动配置而设计的协议,它可以为客户机自动分配IP地址、子网掩码、缺省网关、DNS服务器等TCP/IP参数。 DHCP的前身是 BOOTP,工作在OSI的应用层,承载于UDP协议报文,使用客户端/服务器模式,采用67(DHCP Server)和68(DPCP

ljk0922的专栏 859

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

DHCP Option字段

Tag Name Data Length Meaning Reference 0 Pad 0 None [RFC2132] 1 Subnet Mask 4 Subnet Mask Value [RFC2132] 2 Time Offset 4 Time Offset in Seconds from UTC (note: dep...

weixin_33725272的博客 5130

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

DHCP协议 动态主机配置协议

动态主机配置协议(Dynamic Host Configuration Protocol,DHCP)在TCP/IP网络上使客户机获得配置信息的协议,它是基于BOOTP协议,并在BOOTP协议的基础上添加了自动分配可用网络地址等功能。这两个协议可以通过一些机制互操作。 DHCP向

jiangxiabeijing的专栏 1767

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

arm linux开发板自动配置IP地址

配置内核: [] Networking support —> Networking options —> <> Packet socket <> Unix domain sockets [] TCP/IP networking [] IP: kernel level autoconfiguration [] IP: DHCP support [] Network packet filtering framework (Netfilter) —> 1 2 3 4 5

weixin_52428496的博客 1151

cleanmymac3.9.6_6.DHCP协议

DHCP协议任务:掌握DHCP协议的工作原理、DHCP交互流程、DHCP中继、DHCP snooping的应用场景及工作原理1. DHCP概述原先的手工配置网络参数存在灵活性差、工作量大、出错率高的问题,而DHCP是动态主机配置协议,它是Bootstrap协议的一种扩展,作用是可以自动为主机分配IP地址、网关、DNS服务器地址等参数,并能集中管理,避免手动配置造成的地址冲突。DHCP...

weixin_39542477的博客 262

Linux 网卡报错mtu 1500 qdisc noop state DOWN group default qlen 1000

【代码】Linux 网卡报错mtu 1500 qdisc noop state DOWN group default qlen 1000。

m0_62321216的博客 1094

关于网络协议的若干问题(二)

关于网络协议的若干问题

key_3_feng的博客 4679
上一篇: arm-eabi-gcc: : No such file or directory编译错误
下一篇: wireshark中window is full与window is zore的不同之处
CodeJoker
博客等级 码龄18年 50粉丝 37原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值