LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 898|回复: 8

iptables问题请教,救我!

[复制链接]
发表于 2005-4-4 10:19:50 | 显示全部楼层 |阅读模式
设置squid+iptables的方法实现透明代理服务器,但现在出现一个问题,在客户端登陆qq等可以不用设置代理地址,完全实现透明方式了,但浏览网页就会出现下列问题:


ERROR
The requested URL could not be retrieved

--------------------------------------------------------------------------------

While trying to retrieve the URL: /nba.shtml

The following error was encountered:

Invalid URL
Some aspect of the requested URL is incorrect. Possible problems:

Missing or incorrect access protocol (should be `http://'' or similar)
Missing hostname
Illegal double-escape in the URL-Path
Illegal character in hostname; underscores are not allowed
Your cache administrator is root.



--------------------------------------------------------------------------------

Generated Mon, 04 Apr 2005 01:46:59 GMT by localhost.localdomain (squid/2.5.STABLE1)






请高手指教???我使用命令
iptables -t nat -A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128

(转换80端口到3128)
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j SNAT --to 220.x.x.x
 楼主| 发表于 2005-4-4 10:29:18 | 显示全部楼层
在客户端的浏览器中设置端口为80也是可以上的,这么说端口转换也是成功的了?
但一旦去掉代理服务器的勾,不使用代理就出现上面的
ERROR
The requested URL could not be retrieved
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-4 12:46:38 | 显示全部楼层
help!!!!!!!!!!!!!
回复 支持 反对

使用道具 举报

发表于 2005-4-4 13:42:47 | 显示全部楼层
客户端上的默认网关是哪里??
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-4 13:59:45 | 显示全部楼层
客户端完全设置为自动分配,不设置ip及dns包括网关,是通过另外一台win2000的dhcp分配地址的。
代理服务器是用的双网卡,eth0对外220.196.x.x,对内eth1(192.168.2.5),dhcp是192.168.2.17!兄弟救救我啊
回复 支持 反对

使用道具 举报

发表于 2005-4-4 14:39:59 | 显示全部楼层
ERROR
The requested URL could not be retrieved

没DNS,解析域名。。

以及,和以下精华贴内容类似
http://www.linuxsir.cn/forum.php?mod=viewthread&tid=14261
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-4-4 17:47:33 | 显示全部楼层
无法解析域名,真让我奇怪,域名解析好象和iptable规则定义关系不大啊,我就怀疑是squid的问题,重新配置了squid的文件,发现问题依旧,但用qq什么的都能用透明代理出去,没有任何问题。就是浏览器使用出现问题,而且我在客户端可以ping通广电的dns,我试着ping搜狐却不通但ping新浪去能同,但这两个网站的ip都能解析出来,但就是连不上!!!!


救命啊!!兄弟们!!!还有版主老大呢,出来现现身啊,给点小提示我想想也好啊!
回复 支持 反对

使用道具 举报

发表于 2005-4-4 20:10:18 | 显示全部楼层
假设说你的squid+iptables正常运行,那么,如果iptables不添加特殊语句对轻轻进行处理的话,qq是无法通过squid登陆的。

能否贴出squid以及iptables配置文件给大家参考。
另,精华贴请详细阅读。
回复 支持 反对

使用道具 举报

发表于 2005-4-5 13:30:19 | 显示全部楼层
# cat myiptaballow.sh
echo 1 > /proc/sys/net/ipv4/ip_forward
echo 1 > /proc/sys/net/ipv4/ip_dynaddr
iptables -t nat -F
iptables -t nat -P PREROUTING DROP
iptables -A PREROUTING -t nat -m state --state NEW -m tcp -p tcp --dport 6881 -j ACCEPT
iptables -A PREROUTING -t nat -s 172.16.255.0/24 -j ACCEPT
iptables -A PREROUTING -t nat -s 172.16.0.0/24 -j ACCEPT
iptables -A PREROUTING -t nat -i eth0 -p tcp -m tcp -d ! 172.16.0.1 --dport 80 -j REDIRECT --to-port 3128
iptables -A POSTROUTING -t nat -s 172.16.0.0/16 -o ppp0 -j MASQUERADE


#开6881是为了 BT
回复 支持 反对

使用道具 举报

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

本版积分规则

快速回复 返回顶部 返回列表