首页 > 代码库 > 使用iptables做端口转发

使用iptables做端口转发

#!/bin/sh 

IPT="/sbin/iptables"

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

/sbin/modprobe ip_tables

/sbin/modprobe iptable_filter

/sbin/modprobe iptable_nat

/sbin/modprobe ip_conntrack

/sbin/modprobe ip_conntrack_ftp

/sbin/modprobe ip_nat_ftp

$IPT -F

$IPT -t nat -F

$IPT -X

$IPT -t nat -X

$IPT -Z

$IPT -t nat -Z

#DNAT 做端口转发

$IPT -t nat -A PREROUTING -d 192.168.0.174 -p tcp --dport 28 -j DNAT --to-destination 192.168.9.101:22

$IPT -t nat -A POSTROUTING -p tcp -d 192.168.9.101 --dport 22 -j SNAT --to-source 192.168.0.174

 

#SNAT 做网关转发

#$IPT -t nat -A POSTROUTING  -s 192.168.0.0/16  -j SNAT --to-source 210.72.24.15

 

 

备注:

首先需要启用NAT需要在Linux上打开内核对IP包的转发支持,linux上编辑 /etc/sysctl.conf 文件:

net.ipv4.ip_forward = 1

然后执行

    sysctl -p 

使用iptables做端口转发