iptables端口转发

Posted longbigfish

tags:

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

1. 确定forward开启

# cat /proc/sys/net/ipv4/ip_forward
1

 

2. 转发进来的包

iptables -t nat -A PREROUTING -d 111.111.111.111 -p tcp -m tcp --dport 16922 -j DNAT --to-destination 192.168.0.169:22

 这表示将目的地为111.111.111.111:16922的包发往 192.168.0.169:22

 

3. 设置回路

iptables -t nat -A POSTROUTING -o p4p1 -j SNAT --to-source 192.168.0.240

 这表示将从网卡p4p1出去的包的源地址都设为 192.168.0.240

注:111.111.111.111的网卡为p5p1,连接外部网络。240为的网卡为p4p1,连接内部网路。

 

通过上述设置,假设ip为222.222.222.222的主机要ssh内部主机192.168.0.169,则通过连接主机111.111.111.111的端口16922即可。

111的主机收到包后无条件将其转发到169,并将源代IP设为240。169收到包处理完发回时,目的ip是240,240收到后将目的ip改为222,再根据路由从外网发出去。

 

注:删除操作直接将-A 变为-D

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

iptables实现端口转发

iptables如何转发https的请求

iptables做端口转发

socat 端口转发工具,脚本一键安装配置

iptables 端口转发

Linux iptables 端口转发