Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1727668
  • 博文数量: 782
  • 博客积分: 2455
  • 博客等级: 大尉
  • 技术积分: 4140
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-06 21:37
个人简介

Linux ,c/c++, web,前端,php,js

文章分类

全部博文(782)

文章存档

2015年(8)

2014年(28)

2013年(110)

2012年(307)

2011年(329)

分类:

2011-12-05 18:12:11

原文地址:ip 命令 作者:ai616818

  tunnel、tunl

  ip tunnel命令的操作对象是网络通道(tunnel)。所谓通道(tunnel)是指把数据包封装到IPv4数据包中,使用IP协议发出。有关通道的更多信息,请参考iproute的文档Tunnels over IP in Linux-2.2

  add、delete、change、show或者list

 

  • 缩写:add、a;change、chg;delete、del、d

     

  • 参数
    name NAME(default) 选择通道设备名
    mode MODE 设置通道模式。有效的模式包括:ipip、sit和gre
    remote ADDRESS 设置通道远端地址
    local ADDRESS 设置进入通道数据包的固定本地地址,必须是在本机另外一个接口上的地址。
    ttl N 设置进入通道数据包的TTL为N。N是一个1—255之间的数字。0是一个特殊的值,表示这个数据包的TTL值是继承(inherit)的。ttl参数的缺省值是:inherit
    tos T或者dsfield T 设置进入通道数据包的TOS域,缺省是inherit
    dev NAME 把通道绑定到设备NAME,以便进入通道的数据包只能通过NAME设备路由,并且当对端发生变化时,不能够在另外的设备解开封装。
    nopmtudisc 在这个通道上禁止路径最大传输单元发现( Path MTU Discovery)。默认情况下,这个功能是打开的。注意:这个选项和固定的ttl是不兼容的,如果使用了固定的ttl参数,系统会打开路径最大传输单元发现( Path MTU Discovery)功能。
    key k,ikey k,okey k 只适用于GRE通道,设置keyed GRE通道的key。K或者是一个数字或者是IP地址形式的数字序列。参数key在通道的双向使用,ikey和okey为输入和输出设置不同的key。
    csum,icsum,ocsum 只用于GRE通道,计算进入通道数据包的校验和。ocsum表示只计算出去的数据包的校验和;icsum表示只计算进入的数据包的校验和;而csum等于icsum ocsum
    seq,iseq,oseq 只适用于GRE通道,顺序发送/接收数据包。oseq使向外的数据包顺序发送;iseq要求所有进入的数据包都是按照顺序的;而seq等于iseq oseq

     

  • 示例
  • 建立一个点对点通道,最大TTL是32
      netadm@amber:~ # ip tunnel add Cisco mode sit remote 192.31.7.104 local 192.203.80.1 ttl 32
  •  

  • 缩写:show、list、sh、ls、l

     

  • 参数

      无

     

  • 输出格式
    kuznet@amber:~ $ ip tunnel ls Cisco Cisco: ipv6/ip remote 192.31.7.104 local 192.203.80.142 ttl 32 kuznet@amber:~ $

      输出的第一部分是通道的设备名,接着是通道模式。下面就是设置通道时的各个参数。

     

  • 统计信息
    kuznet@amber:~ $ ip -s tunl ls Cisco Cisco: ipv6/ip remote 192.31.7.104 local 192.203.80.142 ttl 32 RX: Packets Bytes Errors CsumErrs OutOfSeq Mcasts 12566 1707516 0 0 0 0 TX: Packets Bytes Errors DeadLoop NoRoute NoBufs 13445 1879677 0 0 0 0 kuznet@amber:~ $

      以上输出结果里面的数字和使用ip -s link show的输出是一样的,但是每个标志都是特定于通道的。

    CsumErrs 对于打开校验和检验的GRE通道,这个数字是由于校验和错误而丢弃的数据包数量。
    OutOfSeg 在打开顺序功能的GRE通道内,由于顺序错误而丢弃的数据包数量。
    Mcasts 在GRE通道上接收到的多播数据包的数量。
    DeadLoop 由于通道是回环到自己而没有传输的数据包数目。
    NoRoute 由于到对端没有路由而没有被传输的数据包数目。
    NoBufs 由于内核不能分配缓冲区而没有被传输的数据包数目。

    原文:http://blog.csdn.net/chcn00/article/details/4407161

  • 阅读(939) | 评论(0) | 转发(0) |
    给主人留下些什么吧!~~