利用iptables做地址转发

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用iptables做地址转发相关的知识,希望对你有一定的参考价值。

1、实现目的

 有三台服务器,分别为node1,node2(nat),node3,其中node2做nat转换。在node1不能与node3直接通信的情况下,通过node2 nat地址转换,实现node1能与node3通信。

node1:192.168.0.73

node2:192.168.0.74 【nat机器】

node3:192.168.0.189

2、环境配置

 node1不能与node3同学,在node3上开启防火墙,

    在node3上操作

    # systemctl start firewalld.service

    # iptables -A INPUT -s 192.168.0.73 -j REJECT

    将所有来自于192.168.0.73的请求拒绝。

3、NAT服务器配置

     node2上的操作 

    首先打开内核ip地址转发功能

    # cat /proc/sys/net/ipv4/ip_forward  //查看,1为打开,0为关闭

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

    # systemctl start firewalld.service 

    # iptables -t nat -A PREROUTING -s 192.168.0.73 -j DNAT --to-destination 192.168.0.189    //做目标地址转发,将所有来自node1的请求的目的地址转换成node3,由于在路由器是看不到原地址的,所以只有做目的地址转换。

    # iptables -t nat -A POSTROUTING -d 192.168.0.189 -j SNAT --to 192.168.0.74

// 由于PREROUTING链做的目的地址转换,所以在POSTROUTING链看到的就是指向node3的数据包,因此在这里对目的地址为node3的数据包做SNAT(源地址转换),将源地址node1转换成node2的,

    经过目的地址转换和源地址转换后,发往node3的数据包就是S:node2,D:node3,因此跳过了node3的防火墙规则。

本文出自 “汤姆猫” 博客,请务必保留此出处http://ny0716.blog.51cto.com/9154254/1782147

以上是关于利用iptables做地址转发的主要内容,如果未能解决你的问题,请参考以下文章

iptables nat 技术转发

iptables转发技术

iptables转发技术(NAT)

利用iptables做端口转发

防火墙iptables实现Linux强大的NAT功能

[iptables实现IP地址重定向(转发)]