【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 链中的第二条规则(你可以通过第二条命令查看),那么这条命令就会删除那条规则。

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

相关推荐
AIMath~几秒前
向github中上传文件过大超过50M怎么办
网络·git·github
Sagittarius_A*2 分钟前
H3CSE 高性能园区网:SNMP 网络管理协议详解
网络·计算机网络·安全·h3cse
杨充4 分钟前
1.1 数据编码设计原理
linux·运维·网络·底层原理·数据编码
fan_music4 分钟前
Linux I/O
linux
Java小白笔记6 分钟前
Linux 手动部署 Oracle JDK 17 完全指南
java·linux·oracle
wanhengidc27 分钟前
双线服务器有哪些优点?
运维·服务器
缪懿33 分钟前
网络层和数据链路层中的常见协议解析
网络·网络协议·java-ee
CoreTK_EMC1 小时前
牙科医疗器械 ESD 静电整改案例|芯通康医疗级方案,护航诊疗安全与合规
网络·学习·emc整改·芯通康
♛识尔如昼♛1 小时前
C 进阶(15) - 网络IPC:套接字
网络·套接字
jscxy52061 小时前
ospf综合实验
运维·服务器·网络