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

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

相关推荐
小此方6 分钟前
告别云服务器连接困扰——Windows下利用VirtualBox安装配置Ubuntu虚拟机详细教程
服务器·windows·ubuntu
GLAB-Mary1 小时前
90%的网络工程师,根本没必要考HCIE!
网络·华为·华为认证·hcie·hcia·hcip
wuyk5552 小时前
【Socket 进阶之路】第 3 章 TCP 三次握手 & 四次挥手深度剖析|连接建立、断开、状态机、TIME_WAIT 核心工程问题
服务器·开发语言·网络·物联网·网络协议·tcp/ip
一技安身8 小时前
【Docker】 镜像导出 & 导入,实验环境aarch64(arm64)Linux操作系统
linux·docker·容器
平头哥AI8 小时前
Day 22 _ 包装错误别丢链_%w、errors.Is 与 errors.As
android·服务器·学习·golang·go
QYRdata8 小时前
权威数据披露:2026至2032年边缘云服务CAGR达15.6%,赛道发展驶入快车道
网络·人工智能·云计算·服务发现·边缘计算
代码村新手9 小时前
Linux调试器-gdb的使用
linux
新时代牛马9 小时前
PCI与PCIe 硬件原理、配置空间/BAR 与 Linux 驱动完整篇:从 LTSSM、TLP 到 ECAM 与probe
java·linux·服务器
两点王爷11 小时前
解决 Linux 中 version `CXXABI_1.3.8‘ not found 报错
linux·运维·服务器
xx~t11 小时前
嵌入式——51单片机1
linux·c语言·单片机·嵌入式硬件·51单片机