LINUX软路由限速
linux下的iptables是一个非常优秀的路由软件。要实现路由功能我们首先要开启内核的转发功能。以下代码以centos6为例:
实验环境:
centos6通过固定IP上网。双网卡,其中eth1为内网卡地址为192.168.1.1。eth2为外网卡地址以202.106.0.20代替
1. 开启内核转发。
vim /etc/sysctl.conf
net.ipv4.ip_forward=1
2. 为自己实际环境的内网子网添加静态路由
vim /etc/sysconfig/static-routes
any net 192.168.2.0/24 gw 192.168.2.1
具体的路由条目以自己公司的实际情况为主
3. 利用iptables的nat功能实现内网地址伪装。
iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j SNAT --to 202.106.0.20
至此我们的一台linux网关已经准备完毕可以上网了。
4.内网服务器映射(映射内网的SSH服务到公网)
iptables -t nat -A PREROUTING -d 202.106.0.20 -p tcp --dport 22 -j DNAT --to 192.168.1.3
5.限速(以给市场部限速为例)
iptables -F
iptables -t nat -F
shichang_rate=150/second
iptables -N SHICHANG
iptables -A SHICHANG -m hashlimit --hashlimit $shichang_rate --hashlimit-burst 512 --hashlimit-mode dstip --hashlimit-name shichang -j ACCEPT
for ((i = 1; i < 253; i++))
do
iptables -A FORWARD -d 192.168.2.$i -j SHICHANG
done
iptables -A SHICHANG -d 192.168.2.0/24 -j DROP
至此一台可以限速的linux网关完成了。后期的其他安全设置。可以参考其他资料。
本文出自 “技术为王” 博客,请务必保留此出处http://wangzhenyu.blog.51cto.com/2996939/1382357
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。