如何使用 nftables 进行多端口的转发!

2024 年 11 月 20 日
 codersdp1
比如将本机(192.168.66.142)的 22000 端口 转发 目标机器(192.168.66.143)的 20000 端口
22001 端口 转发 目标机器的 20001 端口
22002 端口 转发 目标机器的 20002 端口
...
24000 端口 转发 目标机器的 22000 端口
端口关系是-2000

SNAT 只写一条就好了
ip daddr 192.168.66.143 tcp dport 20000-22000 counter snat to 192.168.66.142

DNAT 得写 2000 条
nft add rule ip nat prerouting tcp dport 22001 counter dnat to 192.168.66.143:20001
nft add rule ip nat prerouting tcp dport 22002 counter dnat to 192.168.66.143:20002
......


DNAT 写 2k 条太影响性能了,有更好的方式了??
1928 次点击
所在节点    程序员
5 条回复
LGA1150
2024 年 11 月 20 日
xqzr
2024 年 11 月 20 日
ip daddr 192.168.66.142 dnat to tcp dport map { 22001 : 192.168.66.143 . 20001, 22002 : 192.168.66.143 . 20002 }
codersdp1
2024 年 11 月 20 日
也知道使用 MAP ,但不知道怎么写。
codersdp1
2024 年 11 月 20 日
@xqzr 这个 192.168.66.143 . 20001 会有语法错误
codersdp1
2024 年 11 月 20 日
@xqzr 可以了,谢谢大哥

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1091292

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX