这几天在linux下使用secure shell的ssh命令登陆远程服务器发现总是出现连接错误。

  登陆服务器:

    ssh -l <用户名> <IP地址>

  命令结果:

    。。。。

    connection closed by .<IP地址>

  出现这种情况可以使用如下命令解决

    ifconfig <网卡名称> mtu 1200

  MTU,即Maximum Transmission Unit(最大传输单元),此值设定TCP/IP协议传输数据报时的最大传输单元。设置合适的MTU值可以解决“部分网站打不开”、“上网速度慢等问题,并且可以适当提升上网速度。

  设置多大的MTU值取决于你的上网方式,不同的上网方式支持不同的MTU,下面列出了一些上网方式的MTU值: ```

     EtherNet(一般上网方式,默认值):1500

     PPPoE/ADSL:1492

     Dial Up/Modem:576 ```

  可以通过ifocnfig先查看你的网卡配置,一般网卡默认的mtu值为1500,如果要使对eth0的配置永久生效,则需要修改/etc/sysconfig/network-scripts/ifcfg-eth0,像下面那样加MTU=1200:

1
2
3
4
5
6
   # cat /etc/sysconfig/network-scripts/ifcfg-eth0,
   DEVICE=eth0
   MTU=1200
   BOOTPROTO=dhcp
   ONBOOT=yes
   TYPE=Ethernet	

然后重启网络接口:

    service network restart/etc/init.d/network restart.

再次使用ssh命令登陆远程linux服务器,就可以发现可以成功登陆linux服务器了。