linux iptables

本文详细介绍了Linux网络管理中的核心代码、NAT、限速、MASQUERADE、DNAT、透明Squid等技术及其配置方法,包括如何设置转发功能、实现NAT、限速、动态NAT和透明代理等功能,以及如何通过修改配置文件和iptables规则来实现这些功能。

核心代码:

注意:请打开内核的转发功能:

echo "1" >/proc/sys/net/ipv4/ip_forward

#######################################################

NAT:

echo 1 > /proc/sys/net/ipv4/ip_forward   //开启转发功能

iptables -t nat -A POSTROUTING -s 172.16.1.0/24 -o eth2 -j SNAT --to-source 10.18.46.22 //NAT

 

-s 172.16.1.0/24 需要替换的源IP

-o eth2 出外网的那张网卡

--to-source 将源地址替换.

 

Appendix:

通过修改配置文件/etc/sysconfig/network在这个文件中添加:FORWARD_IPV4="YES".设置开机打开转发.

#########################################################################

限速:limit

对单个IP限速:

iptables -A FORWARD -s 172.16.1.1/24 -m limit  --limit 60/s -j ACCEPT  // "60/s" 指的是包的大小,根据MTU值(默认)1500可以计算出速度:60*1500/1024 = 88 KB/s

iptables  -A FORWARD -s 172.16.1.1/24 -j DROP  //上面两个规则是一起工作的,也就是说,当包的个数超过60/sec的时候,执行本规则.

#########################################################################

MASQUERADE:动态NAT

iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE


#########################################################################

DNAT:重定向,一般用于内网架设服务器,供外网使用,只要在防火墙上增加一条iptables即可。

iptables -t nat -A PREROUTING -d 10.18.46.17 -p tcp --dport 80 -j DNAT --to 10.18.46.168:8080

为了让包返回时,还是按照原路返回,可以再增加一条SNAT

iptables -t nat -A POSTROUTING -d 10.18.46.168 -p tcp --dport 80 -j SNAT --to 10.18.46.17


#########################################################################

透明Squid

iptables -t nat -A PREROUTING -i em1 -p tcp --dport 80 -j REDIRECT --to-ports 3128

当然还要修改Squid的配置文件:/etc/squid/squid.conf

http_port 3128 transparent(对于现在的squid,都是只要加上一句squid就够了,老的版本请另外查询)


Appendix:

杀掉squid: sudo kill -9 `ps aux | grep squid | grep -v grep | awk '{print $2}'`

重新开启squid:sudo squid -z

                           sudo squid -s

其中:sudo squid -X

           sudo squid -k parse 可以用来检查配置文件的语法.

##########################################################################

附带一个网址,个人认为讲的非常好:

http://www.opsers.org/linux-home/videos/chapter-netfilter-iptables-raiders.html 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值