问题遇到的现象和发生背景
最近碰到这么一个需求,就是当前服务器如果访问网段10.148.0.0/20时,则需要通过代理来访问。
代理现在已经配置好了,端口是8888(TCP代理),8088(http代理)。
我现在通过下面的命令进行设置:
iptables -t nat -A PREROUTING -d 10.148.0.0/20 -p tcp -j REDIRECT --to-ports 8888
[root@server ~]#curl http://10.148.0.25
curl: (7) Failed connect to 10.148.0.25:80; No route to host
访问出错,而且8888这个端口也没有收到10.148.0.25的请求。
操作环境、软件版本等信息
CentOS 7.4 当前机器IP是172.19.99.155,跟要访问的10.148.0.0/20,不在一个网段中,故需要走代理。
尝试过的解决方法
我尝试过设置http代理是可以的
[root@server ~]# export http_proxy=http://localhost:8088
[root@server ~]# export https_proxy=http://localhost:8088
[root@server ~]# curl http://10.148.0.25
"Welcome to gateway!"
但我除了http请求外,还有数据库链接也要走代理,所以要配置成10.148.0.0/20这个网段全部走TCP代理。
我想要达到的结果
访问10.148.0.0/20时,流量全部转到TCP代理端口8888上面