iptables IP转发

有两台服务器:

  • A:219.246.xxx.yyy。这是一个内网地址,外网无法访问。
  • B:202.201.aaa.bbb。这是一个公网地址,它和xxx.lzu.edu.cn这个域名绑定。
两台服务器上都跑了一个HTTP的服务,他们之间可以互相访问。现在希望访问mmm.lzu.edu.cn时,能自动跳转到219.246.xxx.yyy上,因此可以做IP转发,或叫IP映射。来使所有发到202.201.aaa.bbb的请求包都通过它转发到219.246.xxx.yyy上。而所有应答的数据包,又能从219.246.xxx.yyy通过202.201.aaa.bbb回到请求者的地方。
# iptables -t nat -A PREROUTING -d 202.201.aaa.bbb -j DNAT --to-destination 219.246.xxx.yyy
# iptables -t nat -A POSTROUTING -d 219.246.xxx.yyy -j SNAT --to 202.201.aaa.bbb

另外,查看非默认表的规则需要指定表明:

# iptables -t nat -L

需要删除某条规则:

# iptables -t nat -L --line-number //列出规则的编号
# iptables -t nat -D PREROUTING 2 //删除PREROUTING中的第2条规则


/


1:目的:
 
将机器A通过无线连接至无线AP,机器A IP 192.168.1.126,当在机器A中无论访问什么网页都跳转至 192.168.1.45.
 
2:步骤:
 
先打开IP转发功能:
  1. echo "1">/proc/sys/net/ipv4/ip_forward
通过以下命令可以查到返回值为1,表示打开成功
  1. cat /proc/sys/net/ipv4/ip_forward

之后执行iptables命令,执行iptables命令需要在root权限下,所以在此之前先将模式切换至root

  1. iptables -F

  2. iptables -F -t nat

  3. iptables -X

  4. iptables -P FORWARD ACCEPT

  5. iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to 192.168.1.45

3:测试:

将机器A与AP相连,然后尝试打开任何网页,此时如果跳转至192.168.1.45表示IP转发成功


你可能感兴趣的:(iptables IP转发)