天下网吧 >> 网吧天地 >> 网吧技术 >> 网吧安全 >> 正文

网路协议基础:策略路由基础命令(Linux)

2015-10-26不详佚名

69734">

  规则的配置 IP Rule

  在Linux里,总共可以定义232个优先级的规则,一个优先级别只能有一条规则,即理论上总共可以有条规则。其中有3个规则是默认的。命令用法如下:

  Usage: ip rule [ list | add | del ] SELECTORACTION

  SELECTOR := [ from PREFIX ] [ to PREFIX ] [tos TOS ]

  [ dev STRING ] [ pref NUMBER ]

  ACTION := [ table TABLE_ID ] [ nat ADDRESS ]

  [ prohibit | reject | unreachable ]

  [ flowid CLASSID ]

  TABLE_ID := [ local | main | default | new |NUMBER

  首先我们可以看看路由表默认的所有规则:

  root@netmonster# ip rule list

  0: from all lookup local

  32766: from all lookup main

  32767: from all lookup default

  注:数字越小,优先级越高

  规则0,它是优先级别最高的规则,规则规定,所有的包,都必须首先使用local表(254)进行路由。本规则不能被更改和删除。

  规则32766,规定所有的包,使用表main进行路由。本规则可以被更改和删除。

  规则32767,规定所有的包,使用表default进行路由。本规则可以被更改和删除。

  在默认情况下进行路由时,首先会根据规则0在本地路由表里寻找路由,如果目的地址是本网络,或是广播地址的话,在这里就可以找到合适的路由;如果路由失败,就会匹配下一个不空的规则,在这里只有32766规则,在这里将会在主路由表里寻找路由;如果失败,就会匹配32767规则,即寻找默认路由表。如果失败,路由将失败。重这里可以看出,策略性路由是往前兼容的。

  还可以添加规则:

  router># ip rule add [from 0/0] table 1 pref 32800

  router >#ip rule add from 192.168.3.112/32 [tos 0x10] table 2 pref 1500 prohibit

  第一条命令将向规则链增加一条规则,规则匹配的对象是所有的数据包,动作是选用路由表1的路由,这条规则的优先级是32800.

  第二条命令将向规则链增加一条规则,规则匹配的对象是IP为192.168.3.112,tos等于0x10的包,使用路由表2,这条规则的优先级是1500,动作是。添加以后,我们可以看看系统规则的变化。

  router># ip rule

  0: from all lookup local

  1500 from 192.168.3.112/32 [tos 0x10] lookup 2

  32766: from all lookup main

  32767: from all lookup default

  32800: from all lookup 1

  上面的规则是以源地址为关键字,作为是否匹配的依据的。除了源地址外,还可以用以下的信息:

  From -- 源地址

  To -- 目的地址(这里是选择规则时使用,查找路由表时也使用)

  Tos -- IP包头的TOS(type of sevice)域

  Dev -- 物理接口

  Fwmark -- 防火墙参数


本文来源:不详 作者:佚名

声明
声明:本站所发表的文章、评论及图片仅代表作者本人观点,与本站立场无关。文章是出于传递更多信息之目的。若有来源标注错误或侵犯了您的合法权益,请作者持权属证明与本网联系,我们将及时更正、删除,谢谢。 Email:support@txwb.com,系统开号,技术支持,服务联系微信:_WX_1_本站所有有注明来源为天下网吧或天下网吧论坛的原创作品,各位转载时请注明来源链接!
天下网吧·网吧天下
  • 本周热门
  • 本月热门
  • 阅读排行