比如在我程序看来是对 ip 地址 A 创建了个 tcp 连接,但实际上是对 ip 地址 B 创建了个 tcp 连接,这应该怎么实现? Linux C 有例子吗?
比如在我程序看来是对 ip 地址 A 创建了个 tcp 连接,但实际上是对 ip 地址 B 创建了个 tcp 连接,这应该怎么实现? Linux C 有例子吗?
1
wellsc Jan 17, 2018
NGINX
|
2
ThirdFlame Jan 17, 2018
端口映射?
|
3
janxin Jan 17, 2018
|
4
clino Jan 17, 2018
除了端口映射, socks 代理是不是也是做到这种效果?
|
5
dushixiang Jan 17, 2018
iptables nat
|
8
pimin Jan 17, 2018 via Android
端口转发应该是效率最高的
|
9
wangking Jan 17, 2018
ssh 和 iptables 都是有转发功能
|
10
lianxiaoyi Jan 17, 2018
apt-get install rinetd
vim /etc/rinetd.conf 0.0.0.0 3706 xxx.xxx.xxx.xxx 3306 :wq rinetd /etc/rinetd.conf |
12
likuku Jan 17, 2018
haproxy 的 tcp 连接模式
|
13
conn4575 Jan 17, 2018 via Android
haproxy+1
|
14
zjsxwc OP 看了代码原来就是借助 epoll 代理转发,不断的 recv 与 send 数据:
https://github.com/rssnsj/portfwd/blob/master/src/tcpfwd.c#L433 https://github.com/rssnsj/portfwd/blob/master/src/tcpfwd.c#L444 |
15
LGA1150 Jan 17, 2018
在本机上执行
iptables -t nat -I OUTPUT -p tcp -d 地址 A --dport 端口 -j DNAT --to 地址 B |
16
xiaoz Jan 17, 2018
iptables 即可: https://faq.xiaoz.me/archives/72.html
|
17
wwqgtxx Jan 17, 2018 via iPhone |
18
eaglexiang Jan 18, 2018 |