在Linux下配置基于策略的路由


 传统路由器在网络和需求变得复杂时将无法满足需要,而一种基于策略的路由给了我们更好的选择。本文给出一个Linux下的配置实例,它在2.4G奔腾4处理器、256M内存的计算机上运行通过,并在160多台电脑的网络环境下运转正常。
 


  基于策略的路由比传统路由更强大,使用更灵活,它使网络管理者不仅能够根据目的地址而且能够根据报文大小、应用或IP源地址来选择转发路径。在现实的网络应用中,这种选择的自由性还是很需要的。而Linux从2.1版本的内核开始就实现了对策略路由的支持,下面就介绍一个配置实例,以期对读者有所帮助。
 
  实例背景
 
  如图所示,两个内部网通过远端路由器1与因特网相联,通过远端路由器2与上级网相联, Linux服务器做策略路由器,内有4块网卡。IP地址的分配情况如表所示。
 
  在应用需求方面,内网1允许通过远端路由器1(172.22.254.254)连接因特网,但只允许Http协议、Ftp协议经常性通过,其他协议分时间段开放(这样做是为了避免员工在上班时间打网络游戏和聊天),例如在上班时间(7:30~16:30)封闭,在下班时间(16:30~7:30)和周六、日全天开放。而且,内网1无权访问内网2及上级网,但可以访问内网2上的服务器。而允许内网2访问外网,上级网则只能访问内网2上的192.168.1.2服务器。而防火墙主要用来阻止外网主动访问内网,防止网络攻击。
 
  实现过程
 
  这里我们选择Red Hat Enterprise Linux WS 3操作系统,其内核版本是2.4.21,对策略路由已经有了很好的支持,下面的配置也以此为基础。
 
  1.设置IP地址
 
  首先,执行如下命令:
 
  ifconfig eth0 10.89.9.1 netmask 255.255.255.0
 
  ifconfig eth1 192.168.1.1 netmask 255.255.255.0
 
  ifconfig eth2 172.22.254.14 netmask 255.255.255.0
 
  ifconfig eth3 10.140.133.14 netmask 255.255.255.0
 
  为了让计算机启动时自动设置IP地址,还需要分别修改/etc/sysconfig/network-scripts/下的四个文件:ifcfg-eth0、ifcfg-eth1、ifcfg-eth2、ifcfg-eth3,将ONBOOT属性设为yes,即“ONBOOT=yes”,文件格式如下:
 
  # Intel Corp. 82545EM Gigabit Ethernet Controller (Copper)
 
  DEVICE=eth0
 
  BOOTPROTO=none
 
  HWADDR=00:0c:76:20:54:71
 
  ONBOOT=yes
 
  TYPE=Ethernet
 
  USERCTL=yes
 
  PEERDNS=no
 
  NETMASK=255.255.255.0
 
  IPADDR=10.89.9.1
 
  如果你不喜欢命令行模式,也可以在图形模式下进行以上操作:主菜单→系统设置→网络,设好IP地址并激活,并且选中“当计算机启动时激活设备”选项。
 
  2.打开转发功能
 
  执行命令“echo ”1“ > /proc/sys/net/ipv4/ip_forward”,或者在/etc/sysconfig/network文件中添加“FORWARD_IPV4=yes”。
 
  3.创建路由表
 
  编辑 /etc/iproute2/rt_tables 文件,执行如下命令。在这里新添加了4个路由表,分别为int1 、int2、int3、int4.
 
  # reserved values
 
  #255 local
 
  #254 main
 
  #253 default
 
  #0 unspec
 
  # local
 
  #1 inr.ruhep
 
  1 int1
 
  2 int2
 
  3 int3
 
  4 int4

本文作者:
« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3