iptables - iptables DNAT 不能在 2 个接口之间进行端口转发
问题描述
我有一个对我的网络可见的接口和一个环回(127.0.0.1),
ens192 -> 192.168.22.100
lo -> 127.0.0.1
我有一个服务在端口 3333 的 lo 接口上运行,我想通过 ens192 通过端口 4444 到达该端口
192.168.22.100:4444 -> 127.0.0.1:3333
我已经在 StackOverflow 上尝试了所有可用的解决方案,但它不起作用。
解决方案
sysctl -w net.ipv4.conf.[IFNAME].route_localnet=1
iptables -t nat -A PREROUTING -p tcp -d 192.168.22.100 --dport 4444 -j DNAT --to 127.0.0.1:3333
iptables -A INPUT -i ens192 -p tcp --dport 4444 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o ens192 -p tcp --sport 4444 -m state --state ESTABLISHED -j ACCEPT
推荐阅读
- c++ - -Wno-pedantic 在旧版 gcc 上被忽略
- c# - c# xml注释,cref不能引用基类中定义的方法
- birt - 如何将 birt 报告放在 PDF 的一页中
- c# - 如何使用来自另一个列表的值附加到字符串列表?
- javascript - 等待过滤器完成
- python - 在 Jupyter 中显示的度数符号,但在其他任何地方都没有 - Python
- rx-java2 - 在 Flowable 上的 dispose() 之后调用 Completable 操作
- javascript - Javascript 检查 HTML 是否包含数组中的项目
- jquery - 更改复选框选择时隐藏 div
- python - 如何在 SymPy 中求解具有符号系数和非交换变量的方程?