IPTABLES Nat And Manage

Nat: Network Address translation

SNAT: change source ip
DNAT: change destination ip

iptable -t nat -L : list

PREROUTING: 修改目标IP DNAT -i eh0
OUTPUT:对本机产生的数据包执行 DNAT
POSTROUTING: 修改来源IP SNAT -o eth0

一对多
iptables -t nat -A POSTROUTING -o  eth0 -s 192.168.0.0/28 -j SANT --to 10.0.1.2008


如果公网地址不固定
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.0/24 -j MASQUERADE


多对多,前提条件是你必须有多个公网IP,并且是连续的
iptables -t nat -A POSTROUTING -o etho -s 192.168.0.0/24 -j SNAT --to 10.0.1.200-

10.0.1.205



一对一NAT

处于内网的每个对外服务器都有一个公网IP

主要目的是当把对外服务器部署在内网中时,提供给对外服务主机一个更安全的运行的环境

例如服务器的内网地址是192.168.0.1,8的eth1上有三个IP,启动10.0.1.201是192.168.0.1

的对应外网地址

数据包从NAT进入对外服务器8
iptables -t nat -A PREROUTING -i eth0 -d 10.0.1.201 -j DNAT --to 192.168.0.1

如果用户需要在这台服务器上访问因特网,
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.0.1 -j SNAT --to 10.0.1.201



如果并不是每个处于内网的服务器都有一个公网IP呢,,我们可以用端口来区分
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 

192.168.0.1:80

iptables -t nat -a PREROUTING -i eth0 -p tcp --dport 443 -j DNAT --to 

192.168.0.1:443




NAT Manage机制

1. 修改TTL的值
   windows:128
   linux: 64


2. 修改IP包的DSCP值对特定的数据包设置特征
  
   iptables -t mangle -A OUTPUT -p tcp --dport 22 -j DSCP --set--dscp 43
   






猜你喜欢

转载自ssh-2009-126-com.iteye.com/blog/1734830