Maple's Blog.

linux 端口转发 iptables

字数统计: 293阅读时长: 1 min
2022/04/19

linux 端口转发 iptables

centos 7 使用 firewalld 服务而不是 iptables,如果 centos7 以上需要注意!!

1.开启配置 iptables

临时修改:

1
$ echo 1 >/proc/sys/net/ipv4/ip_forward

默认值 0 是禁止 ip 转发,修改为 1 即开启 ip 转发功能。

重启生效:

修改 /etc/sysctl.conf 文件:

1
net.ipv4.ip_forward = 1

其他:

1
sysctl -w net.ipv4.ip_forward=1

查看路由表:

netstat -rn 或 route -n

查看 iptables 规则:

iptables -L

查看 iptbales nat 规则 :

iptbales -t nat -L

2.简单转发

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#-- 把访问本机 8091 端口的请求转发到 8090端口
iptables -t nat -A PREROUTING -p tcp --dport 8091 -j REDIRECT --to-ports 8090

# 通过 1.168 的 6666 端口访问 1.8 的 7777 端口
iptables -t nat -A PREROUTING -p tcp --dport 6666 -j DNAT --to-destination 192.168.1.8:7777
iptables -t nat -A POSTROUTING -p tcp -d 192.168.1.8 --dport 7777 -j SNAT --to-source 192.168.1.168

# 跨主机转发,除了把请求发给 7777 端口之外,还要保证 7777 的请求可以返回。

# centos 可以 save 和 restart
service iptables save
service iptables restart

# ubuntu 需要安装 iptable-persistence
sudo iptables-save > /etc/iptables/rules.v4
sudo ip6tables-save > /etc/iptables/rules.v6
# 删除直接删除文件

参考:

  1. https://www.jianshu.com/p/c35e7637e09b

  2. https://www.cnblogs.com/paul8339/p/14688156.html

CATALOG
  1. 1. linux 端口转发 iptables
    1. 1.0.1. 1.开启配置 iptables
    2. 1.0.2. 2.简单转发
  2. 1.1. 参考: