免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5392 | 回复: 5
打印 上一主题 下一主题

网络高手请进:iptables 如何实现代理上网? [复制链接]

论坛徽章:
1
程序设计版块每日发帖之星
日期:2016-06-04 06:20:00
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-12-03 12:03 |只看该作者 |倒序浏览
首先,我对IPTABLES不熟悉。。

环境是这样的:
A.局域网内的一台linux主机a,可上网,只有一张网卡,假设IP 192.168.1.2;
B.路由器/网关b,假设IP 202.11.22.33,网关IP 192.168.1.1;
C.另外有一台公网代理服务器c,IP 101.4.5.6,开放的代理端口口 8888,可提供匿名/高匿名HTTP代理;
D.公网的一个应用服务器d,IP 303.7.8.9,提供80 HTTP访问,也提供 9999端口HTTP服务。

通过a的浏览器,设置代理 101.4.5.6:8888,可以从应用服务器d中,看到a 通过浏览器访问,并看到的是 c的IP。

但是如果我需要在其他程序中,也使用代理服务器d,那么我应该怎么样做呢?
如果我需要在程序中访问d的9999端口,也是使用代理服务器的,那么我又应该怎么样做?

iptables可以实现?如何实现?

试过曾经是成功的(应该不是我的幻觉),

在主机a中:
iptables -t nat -A OUTPUT -p tcp -dport 80 -j DNAT --to-destination 101.4.5.6:8888
(在这个之前,应该没有使用# echo 1 > /proc/sys/net/ipv4/ip_forward )

然后,用a的浏览器来访问d, 而从d 看到是来自c 的访问。
另外,路由器b没有做任何改变。

遗憾的是,我没法成功重复这个设置,
是我之前的幻觉?
还是我之前在使用这个命令之前,做了其他的操作?
是iptables不可以设置代理服务器?
是我的命令用错了?
请指教~先谢谢了~~

论坛徽章:
1
程序设计版块每日发帖之星
日期:2016-06-04 06:20:00
2 [报告]
发表于 2014-12-03 12:12 |只看该作者
简单点来说,就是:
我是否可以在主机a 中,通过iptables设置a使用代理服务器c,然后访问d.
如果iptables不可以,那么应该怎么样做?
tsock5这种好像只是代理某一个程序,而我想要的是:

1.全局的代理,即所有的用户程序都可以通过代理访问,而不是单纯的只有浏览器可以通过代理访问。
2.包括80端口以及其他某些指定端口的代理,比如5566端口。即任何一个程序,只要是想访问外网某个IP的5566端口,那么这个访问都是通过代理c访问的。

论坛徽章:
26
CU十二周年纪念徽章
日期:2013-10-24 15:41:34技术图书徽章
日期:2014-07-11 16:27:52辰龙
日期:2014-09-04 13:40:43白羊座
日期:2014-09-09 12:51:55双子座
日期:2014-09-26 11:00:042014年中国系统架构师大会
日期:2014-10-14 15:59:00子鼠
日期:2014-10-23 16:48:23巨蟹座
日期:2014-10-27 08:21:10申猴
日期:2014-12-08 10:16:282015年辞旧岁徽章
日期:2015-03-03 16:54:15NBA常规赛纪念章
日期:2015-05-04 22:32:03IT运维版块每日发帖之星
日期:2016-01-29 06:20:00
3 [报告]
发表于 2014-12-03 12:52 |只看该作者
画图出来,容易理解点

论坛徽章:
0
4 [报告]
发表于 2014-12-03 13:06 |只看该作者
本帖最后由 大众推荐 于 2014-12-03 14:03 编辑

论坛徽章:
1
程序设计版块每日发帖之星
日期:2016-06-04 06:20:00
5 [报告]
发表于 2014-12-03 14:05 |只看该作者
本帖最后由 robin10 于 2014-12-03 14:34 编辑

linux主机a (IP 192.168.1.2) <--> 路由器b (IP 192.168.1.1) <--> 代理服务器c (IP 101.4.5.6:8888 ) <-->要访问的服务器d (IP 303.7.8.9:80 和 9999端口)


现在想在a 中,通过iptables 设置/使用代理,通过 代理服务器c 来访问d 的80和9999端口。
a中,不单是通过浏览器访问d, 也有通过其他的应用程序,通过http协议访问d.

论坛徽章:
1
程序设计版块每日发帖之星
日期:2016-06-04 06:20:00
6 [报告]
发表于 2014-12-03 14:05 |只看该作者
欢迎指导~~~
回复 3# cryboy2001


   
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP