找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 5467|回复: 8

一个iproute2的应用实例

[复制链接]
发表于 2005-3-17 20:42:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
不知道CL中是不是用的iproute2

QUOTE
一个iproute2的应用实例--------------------------------------------------------------------------------公司有两条互联网线路分别接入到不同的ISP, 代理服务器用LINUX 2.4内核以上, 安装有三片网卡,通过如下脚本实现共享两条 互联网线路上网; 此方法只能完成路由级别的负载均衡,而不能完成包级别的负责均衡, 具体文档请查阅有关iproute2方面的资料;以下脚本只是为了配置方便而写的, 如果有更好更强大功能的脚本希望能起到抛砖引玉的作用;[root@proxy iproute]#more iproute2.sh#!/bin/shPATH=/usr/local/sbin:/usr/sbin:/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin################################################################################ ---------# |       |eth1# | LINUX | ----------gw1 ---->ISP1# localnet|      |ip1# eth0 ---|          |# localip |       |eth2# | BOX   |----------gw2 ----> ISP2# |       | ip2# ---------###############################################################################int1=eth1ip1=111.111.111.2gw1=111.111.111.1pref1=1int2=eth2ip2=222.222.222.2gw2=222.222.222.1pref2=1localnet=172.16.0.0/16localip=172.16.0.1###############################################################################start() {ip rule add from $ip1 lookup 100 prio 100ip route add $localnet via $localip table 100ip route add 0/0 via $gw1 table 100ip rule add from $ip2 lookup 101 prio 101ip route add $localnet via $localip table 101ip route add 0/0 via $gw2 table 101ip route del defaultip route add default equalize \nexthop via $gw1 dev $int1 weight $pref1 \nexthop via $gw2 dev $int2 weight $pref2ip route flush cache ; ip route flush cache ; ip route flush cache ;}stop() {ip rule del from $ip1 lookup 100 prio 100ip route del $localnet via $localip table 100ip route del 0/0 via $gw1 table 100ip rule del from $ip2 lookup 101 prio 101ip route del $localnet via $localip table 101ip route del 0/0 via $gw2 table 101ip route del default equalize \nexthop via $gw1 dev $int1 weight $pref1 \nexthop via $gw2 dev $int2 weight $pref2route add default gw $gw1ip route flush cache ; ip route flush cache ; ip route flush cache ;}status() {clearecho current route rule :echoip rule listechoecho current route table :echoip routeechoecho current route status :echoip route list cache |grep "via $gw1" |wc -l |while read line1doecho " nexthop via $gw1 ": $line1doneip route list cache |grep "via $gw2" |wc -l |while read line2doecho " nexthop via $gw2 ": $line2doneecho}case "$1" instart)start;;stop)stop;;restart)stopstart;;status)status;;*)echo $"Usage: $0 {start|stop|restart|status}"exit 1esacexit 0有关IPTABLES 的配合如下:[root@proxy iproute]# more iptables.sh#!/bin/bash/sbin/modprobe ip_tables/sbin/modprobe ip_conntrack_ftp/sbin/modprobe ip_nat_ftpecho 1 > /proc/sys/net/ipv4/ip_forward/sbin/iptables -F INPUT/sbin/iptables -F OUTPUT/sbin/iptables -F FORWARD/sbin/iptables -F POSTROUTING -t nat/sbin/iptables -F PREROUTING -t nat/sbin/iptables -F OUTPUT -t nat/sbin/iptables -A FORWARD -i eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT/sbin/iptables -A FORWARD -i eth2 -m state --state ESTABLISHED,RELATED -j ACCEPT/sbin/iptables -t nat -A POSTROUTING -o eth+ -s 172.16.0.0/16 -j MASQUERADE/sbin/iptables -A FORWARD -s 172.16.0.0/16 -j ACCEPT完; __________________有人说一个人有烦恼是因为记性太好。那年开始,我忘记了很多事情,唯一有印象的,就是我喜欢桃花。gongguan008@msn.comapache
routeros
发表于 2005-3-18 14:44:36 | 显示全部楼层
CL 用的正是iproute2,  uClibc的缩小版,好在功能没缩水我现在用它编自己的QOS,效果比CL自带的脚本(同样是用TC)好多了。。。
routeros
回复

使用道具 举报

发表于 2005-3-18 14:51:16 | 显示全部楼层
cl的内核默认没有打开高级路由控制。
routeros
回复

使用道具 举报

发表于 2005-3-18 15:13:00 | 显示全部楼层
那么要用高级路由的话,只能自己重新编译内核了。。。
routeros
回复

使用道具 举报

 楼主| 发表于 2005-3-18 18:38:54 | 显示全部楼层
嘿嘿,我的意思就是让老大重新编译一个内核。。。
routeros
回复

使用道具 举报

发表于 2005-3-18 18:39:30 | 显示全部楼层
QUOTE (henrt @ Mar 18 2005, 02:44 PM)
CL 用的正是iproute2,  uClibc的缩小版,好在功能没缩水我现在用它编自己的QOS,效果比CL自带的脚本(同样是用TC)好多了。。。  
  什么地方有cl的qos设置的相关资料啊?兄弟方便共享你的脚本吗?
routeros
回复

使用道具 举报

 楼主| 发表于 2005-3-18 18:42:22 | 显示全部楼层
QUOTE (henrt @ Mar 18 2005, 02:44 PM)
CL 用的正是iproute2,  uClibc的缩小版,好在功能没缩水我现在用它编自己的QOS,效果比CL自带的脚本(同样是用TC)好多了。。。  
  绝对是缩水了的。有好几个选项和参数都不支持。
routeros
回复

使用道具 举报

发表于 2005-3-18 23:19:20 | 显示全部楼层
不能要求太高啦,libc版的iproute2 光执行文件就2xxk大啦。。。我认为不一定是他的功能缩水,因为CL的内核严重缩水,限制了iproute2研究自己做个功能全一点的小内核,试试就知道啦
routeros
回复

使用道具 举报

发表于 2005-3-19 11:38:25 | 显示全部楼层
cl是商业版的简化版,当然有差距了。
routeros
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|软路由 ( 渝ICP备15001194号-1|渝公网安备 50011602500124号 )

GMT+8, 2024-9-17 03:31 , Processed in 0.058523 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表