linux系统下修改最大传输单元mtu的方法 【百科全说】-凯发k8官方旗舰厅

腾讯视频/爱奇艺/优酷/外卖 充值4折起

  最大传输单元(maximum transmission unit,mtu)是指一种通信协议的某一层上面所能通过的最大数据报大小(以字节为单位)。最大传输单元这个参数通常与通信接口有关(网络接口卡、串口等)。

  因特网协议允许ip分片,这样就可以将数据报分成足够小的片段以通过那些最大传输单元小于该数据报原始大小的链路了。这一分片过程发生在ip层(osi模型的第三层,即网络层),它使用的是将分组发送到链路上的网络接口的最大传输单元的值。原始分组的分片都被加上了标记,这样目的主机的ip层就能将分组重组成原始的数据报了。

  在因特网协议中,一条因特网传输路径的“路径最大传输单元”被定义为从源地址到目的地址所经过“路径”上的所有ip跳的最大传输单元的最小值。或者从另外一个角度来看,就是无需进一步分片就能穿过这条“路径”的最大传输单元的最大值。

  rfc 1191描述了“路径最大传输单元发现方法”,这是一种确定两个ip主机之间路径最大传输单元的技术,其目的是为了避免ip分片。在这项技术中,源地址将数据报的df(don't fragment,不要分片)位置位,再逐渐增大发送的数据报的大小——路径上任何需要将分组进行分片的设备都会将这种数据报丢弃并返回一个“数据报过大”的icmp响应到源地址——这样,源主机就“学习”到了不用进行分片就能通过这条路径的最大的最大传输单元了。

  不幸的是,越来越多的网络封杀了icmp的传输(譬如说为了防范dos攻击)——这使得路径最大传输单元发现方法不能正常工作,其常见表现就是一个连接在低数据流量的情况下可以正常工作,但一旦有大量数据同时发送,就会立即挂起(例如在使用irc的时候,客户会发现在发送了一个禁止ip欺骗的ping之后就得不到任何响应了,这是因为该连接被大量的欢迎消息堵塞了)。而且,在一个使用因特网协议的网络中,从源地址到目的地址的“路径”常常会为了响应各种各样的事件(负载均衡、拥塞、断电等等)而被动态地修改——这可能导致路径最大传输单元在传输过程中发生改变——有时甚至是反复的改变。其结果是,在主机寻找新的可以安全工作的最大传输单元的同时,更多的分组被丢失掉了。

  对于时下大多数使用以太网的局域网来说,最大传输单元的值是1500字节。但是像pppoe这样的系统会减小这个数值,这就使得在使用最大传输单元发现方法时可能会产生这样的结果:一些处于配置不当的防火墙之后的站点变得不可达了。对于这种情况,还是可能找到变通的方法的,但这取决于你控制的是网络的哪一部分。这些方法包括改变用来在防火墙一端建立tcp连接的第一个分组的mss(maximum segment size,最大分段大小)。

  对于一些支持老版本以太网协议的ibm系统(例如xseries),可能只有在把最大传输单元设为1492之后才能在当下常见的局域网上进行运作。

  mtu的修改方法如下:

  1、ifconfig命令修改

  [/code]

  ifconfig ${interface} mtu ${size} up

  ifconfig eth1 mtu 9000 up

  [/code]

  这个是最通用的方法,对所有的linux 发行版本都有效。缺点就是重启后失效,需要在开机项中加载。

  2、修改配置文件

  centos / rhel / fedora linux下

  代码如下:

  # vi /etc/sysconfig/network-scripts/ifcfg-eth0

  #增加如下内容

  mtu="9000"

  #保存后重启网卡生效

  # service network restart

  #启用ipv6地址的,修改ipv6 mtu的参数为

  ipv6_mtu="1280"

  debian / ubuntu linux下

  代码如下:

  # vi /etc/network/interfaces

  #增加如下值

  mtu 9000

  #保存后,重启网络生效

  # /etc/init.d/networking restart

  3、为什么mtu最大值为9000字节

  从理论上计算,4 bytes的crc最大支持12000 bytes大小的字节,超过了就没有办法检查了。另外还有其他一些协议如nfs等的限制。

  最后需要注意的是,在经过交换网络设备时,仅仅修改主机端的mtu值是不行的,还需要交换网络设备上开启jumbo frames功能。

  4、mtu测试

  使用ping命令,-l 指定包大小,-f 选项为通知操作系统不能私自更改该数据包大小



  使用英文操作系统时的提示为:packet needs to be fragmented but df set

如何在linux系统下修改debian wheezy默认配置的方法

09/24 19:01
debian wheezy修改默认配置 环境:thinkpad t420s debian wheezy 1,thinkpad禁用触摸板(反正我是一直不习惯用触摸板)在 /etc/profile 配置文件尾部添加 synclient touchpadoff=1 2,thinkpad trackpoint(小红帽)启用中键滚动,并调整速度与灵敏度编写一个小脚本添加到开机启动项里,脚本内容如下: [plain] #!/bin/bash echo -n 120 >
03/31 18:01
电脑中必不可少的就是操作系统。而linux的发展非常迅速,有赶超微软的趋势。这里介绍linux的知识,让你学好应用linux系统。比如要把/etc/apache/bin目录添加到path中,方法有三: 1.#path=$path:/etc/apache/bin 使用这种方法,只对当前会话有效,也就是说每当登出或注销系统以后,path 设置就会失效 2.#vi /etc/profile 在适当位置添加 path=$path:/etc/apache/bin (注意:= 即等号两边不能有任何空格) 这
09/13 21:55
太多的文件导致我们无法去定位一个函数的实现或者一个宏定义的位置。显然对于源码的阅读和个人的学习都是非常不利的。多么希望有一个软件能够输入命令就能够精确的定位函数的位置。是的,现在有这么一个工具:ctags,它需要和vim编辑器配合使用,让源码阅读可以更加轻松。 什么是ctags? ctags(generate tag files for source code)是vim下方便代码阅读的工具。尽管ctags也可以支持其它编辑器,但是它正式支持的只有vim。并且vim中已经默认安装了ctags,它可

win10系统下修改文件默认保存位置的方法

02/10 04:33
我们在使用电脑系统中的时候在意的问题定是速度以及功能性.那么到底是什么影响是什么影响到了电脑的运行速度呢?以小编的浅薄的知识暂且知道,系统中的储存量大大地影响了我们平时运行的速度.在win10系统中,文件默认保存位置是在c盘,而c盘是系统盘,长时间的系统空间占用很可能会导致系统运行变慢.不光光如此,列如,在我们重新安装系统的同时,win10系统中,文件默认保存位置是在c盘,而c盘是系统盘,长时间的系统空间占用很可能会导致系统运行变慢.这是我们电脑运行久了会越来越慢的原因.所以我们最好把win10
05/01 02:34
在web开发过程中,经常需要设定一些定期执行的任务,比如商品定时上下架.我们以php文件为例,讲解linux下的计划任务. 方法/步骤 1.打开linux系统命令行界面. 在命令行界面中输入如下命令:which php,回车. 1.记住上一步的php路径,继续在命令行下输入:crontab -e,回车,按下“i”键进入vi编辑器的编辑模式,在当前模式下输入如下命令: 10,40,50 * * * * /usr/bin/php /opt/lampp/htdocs/wechat/xjtest-web
12/09 08:43
linux下修改ip地址通常使用ifconfig修改,但这样修改十分麻烦,下面小编给大家介绍下使用命令更改ip地址的方法,一起来学习下吧。 方法/步骤 1、使用root用户登录进入linux,打开进去终端 2、在终端中输入:vi /etc/sysconfig/network-scripts/ifcfg-eth0 3、回车后, 开始编辑,填写ip地址、子网掩码、网关、dns等。其中“红框内的信息”是必须得有的。 4、编辑完成后,保存退出 重启网络服务 service network restart
06/13 05:44
正如我们所知道的那样,电脑只能够处理低级的二进制值,并不能直接处理字符.当一个文本文件被存储时,文件中的每一个字符都被映射成二进制值,实际存储在硬盘中的正是这些"二进制值".之后当程序打开文本文件时,所有二进制值都被读入并映射回原始的可读字符.只有当所有需要访问这个文件的程序都能够"理解"它的编码,即二进制值到字符的映射时,这个"保存和打开"的过程才能很好地完成,这也确保了可理解数据的往返过程. 如果不同的程序使用不同的编码来处理同一个文件,源文
09/01 13:01
一、下载ies4linux 去 http://www.tatanka.com.br/ies4linux/page/installation 下载ies4linux的文件包(目前版本为2.99),然后解压缩。注意:这个网站被大陆和谐了,需要跳墙。至于怎么跳,诸位就各显神通了:-) 一些发行版的软件源里也会有ies4linux的包,比如ubuntu、arch。这时就只要apt-get或者pacman一下就行了。实在没有就baidu、google,肯定能下载到。 二、安装ie6 运行软件包里的安装脚本
12/09 16:18
临时修改ip地址.网关.主机名.dns,马上生效,无需重启(重启后失效) 1.修改主机名 代码如下: #hostname slyar 2.修改ip地址(eth0为网卡名称) 代码如下: #ifconfig eth0 192.168.1.5 netmask 255.255.255.0 3.修改默认网关(eth0为网卡名称) 代码如下: #route add default gw 192.168.1.1 dev eth0 4.修改dns 代码如下: #vim /etc/resolv.conf cen
网站地图