github: https://github.com/lidotcircle/portForwarder
应用协议复用器是一种工具,它允许您根据客户端发送的第一个数据包中的正则表达式模式匹配,将 TCP 或 UDP 流量转发到不同的地址。
可以从源代码构建此工具,或者从发布页面下载名为 portfd 的预编译二进制文件。
可以使用简单的命令行参数运行 portfd ,请使用以下语法:portfd <local-bind> <remote>
。
在这种情况下,需要指定监听地址和远程地址。
对于更高级的用法,portfd 可以使用支持更复杂规则的配置文件启动。以下是一个使用 YAML 格式的配置文件示例:
forwarders:
- local: 0.0.0.0:8808
# 指定 'remoteMap' 或 'remote'
remoteMap:
- pattern: "[http:localhost]"
remote: 192.168.44.43:5445
- pattern: "[https:baidu.com]"
remote: "39.156.66.10:443"
- pattern: "[ssh]"
remote: "192.168.44.43:22"
- pattern: .*
remote: 192.168.100.46:3389
remote: <remote-address/127.0.0.1:2233>
enable_tcp: true # 默认为 true
enable_udp: true # 默认为 true
conn_bufsize: 2MB
max_connections: 10000 # 可选
allow_nets: # 可选的白名单
- 127.0.0.0/24
pattern
字段支持四种格式,所有格式都将转换为正则表达式:
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.