【Linux】端口映射

外部访问http://127.0.0.1(默认端口80)

实际访问http://127.0.0.1:8080

//添加规则

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

//移除规则

iptables -t nat -L -nv --line-numbers

iptables -t nat -D PREROUTING 2

以下解释------文心一言

这些命令是使用 iptables 在 Linux 系统中配置网络数据包过滤和路由规则。iptables 允许用户配置内核级的网络数据包过滤规则,这些规则可以基于源地址、目标地址、端口号、协议类型等多种条件。

  1. iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

    • -t nat: 指定操作的是 NAT(网络地址转换)表。
    • -A PREROUTING: 向 PREROUTING 链添加一条规则。PREROUTING 链用于在数据包路由到其目标之前修改它们。
    • -p tcp: 这条规则仅适用于 TCP 协议的数据包。
    • --dport 80: 这条规则仅适用于目标端口为 80 的数据包。
    • -j REDIRECT: 对匹配的数据包执行 REDIRECT 动作。
    • --to-port 8080: 将数据包重定向到本地机器上的 8080 端口。

这条命令的效果是:将所有进入系统的、目标端口为 80 的 TCP 数据包重定向到本地机器的 8080 端口。

  1. iptables -t nat -L -nv --line-numbers

    • -t nat: 指定查看的是 NAT 表。
    • -L: 列出规则。
    • -nv: 以数字格式和详细模式列出规则。
    • --line-numbers: 显示每条规则的行号。

这条命令的效果是:列出 NAT 表中的所有规则,并显示它们的行号。

  1. iptables -t nat -D PREROUTING 2

    • -t nat: 指定操作的是 NAT 表。
    • -D PREROUTING: 从 PREROUTING 链中删除一条规则。
    • 2: 删除行号为 2 的规则。

这条命令的效果是:从 PREROUTING 链中删除行号为 2 的规则。假设你之前用第一条命令添加了一条规则,并且它现在是 PREROUTING 链中的第二条规则(你可以通过第二条命令查看),那么这条命令就会删除那条规则。

注意:在删除规则之前,最好先确认要删除的规则的确是你想要删除的,否则可能会意外地删除其他有用的规则。

相关推荐
wenzhangli74 小时前
OoderAgent SDK(0.6.6) UDP通讯与协议测试深度解析
网络·网络协议·udp
天才奇男子4 小时前
HAProxy高级功能全解析
linux·运维·服务器·微服务·云原生
安科士andxe5 小时前
60km 远距离通信新选择:AndXe SFP-155M 单模单纤光模块深度测评
网络·信息与通信
学嵌入式的小杨同学5 小时前
【Linux 封神之路】信号编程全解析:从信号基础到 MP3 播放器实战(含核心 API 与避坑指南)
java·linux·c语言·开发语言·vscode·vim·ux
酥暮沐5 小时前
iscsi部署网络存储
linux·网络·存储·iscsi
darkb1rd5 小时前
四、PHP文件包含漏洞深度解析
网络·安全·php
❀͜͡傀儡师6 小时前
centos 7部署dns服务器
linux·服务器·centos·dns
Dying.Light6 小时前
Linux部署问题
linux·运维·服务器
S19016 小时前
Linux的常用指令
linux·运维·服务器
小义_6 小时前
【RH134知识点问答题】第7章 管理基本存储
linux·运维·服务器