跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • Debian10 的 iptables redirect 规则
未分類
19 5 月 2020

Debian10 的 iptables redirect 规则

Debian10 的 iptables redirect 规则

資深大佬 : plko345 0

我想实现的规则是, 主机 A(vmware 虚拟机, debian10) 有一个监听 127.0.0.1:8080 的服务, 我想主机 B (宿主机)能够访问 A 的服务

iptables -t nat -A PREROUTING -d <主机 A 的外网地址> -p tcp --dport 30000 -j REDIRECT --to-ports 8080  iptables -t nat -A OUTPUT -d <主机 A 的外网地址> -p tcp --dport 30000 -j REDIRECT --to-ports 8080  sysctl -w net.ipv4.conf.all.route_localnet=1 

失败, 我又尝试了 DNAT 的规则

iptables -t nat -A PREROUTING -d <主机 A 的外网地址> -p tcp --dport 30000 -j DNAT --to-destination 127.0.0.1:8080 

依然失败, 我之前在公司的 ubuntu 16.04 上实现过是成功的, 但现在在虚拟机上是失败的, 是否和 debian10 nftables 有关, debian10 上现在默认 iptables 规则会转换好像, 有相关经验的吗?

大佬有話說 (7)

  • 主 資深大佬 : plko345

    忘记说了

    “`sh
    iptables -t nat -A OUTPUT -d <主机 A 的外网地址> -p tcp –dport 30000 -j REDIRECT –to-ports 8080
    “`

    这条规则在主机 A 上, `curl <主机 A 外网地址>:30000` 能成功访问服务, 也就是说回环接口是成功的

  • 資深大佬 : Saimen

    使用 iptables-legacy

  • 資深大佬 : Jirajine

    把那个 DNAT 规则在 A 上执行。
    另外你这个用法怎么感觉有点不对呢,直接 ssh 端口转发不好么。

  • 資深大佬 : tulongtou

    为啥虚拟机的服务不绑定成 0.0.0.0:8080

  • 資深大佬 : istek999

    iptables -A PREROUTING -p tcp -m tcp –dport 本地端口 -j DNAT –to-destination 服务 IP:服务端口
    iptables -A POSTROUTING -d 服务 IP/32 -p tcp -m tcp –dport 服务端口 -j SNAT –to-source 本地 IP

  • 資深大佬 : istek999

    还有记得本地打开转发。
    net.ipv4.ip_forward = 1

  • 主 資深大佬 : plko345

    @istek999 感谢, 但有点不明白, 我的那条 DNAT 规则应该和你的是一样的呀, 可能是其他问题导致的吧

    还有为什么 REDIRECT 规则不行

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具