您的位置:首页 > 编程语言 > Python开发

python中socket编程出现的no route to host问题。

2010-07-01 16:38 337 查看
Python中使用socket编程
 

今天在测试一段程序时,使用socket时试图从数据库中发送一段消息给我这个fedora12的系统,出现了一个很奇怪的问题,怎么着出错消息都是no
route to host ,
可是我明明二者是在一个网段中,我还是通过ssh登录到数据库服务器中进行如上的控制的,ping也能ping通,我当时那叫一个崩溃阿,怎么也不明白,还意味python出现了某种问题,一上午都没搞好。后来下午我都准备重新学习一遍python中的socket编程的东西了。
最后发现问题的所在了。
问题在我机器上的防火墙,用iptables
-L INPUT -v 命令查看iptables的规则,我发现我的收端监听的端口不在规则列表中,而input
chain最后一条默认规则是DROP。。。自然就不通了,打开这个端口,网络果然通了。。。
socket出现问题时,要判断问题出现在哪里。可以放开客户端的程序,而使用telnet
[serverIP]
[port]来判断收端在相应的端口上是否可达。如果可以,那么是程序的问题,否则出现此问题的主要原因很可能是网络而不是自己的程序,此时,各种相关工具可以组合判断出问题的所在,ping,
route, iptables等等。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息