linux下出现connect failed: Permission denied错误的解决办法
2014-06-08 16:41
417 查看
有两台linux服务器,一台ubuntu13,一台fedora20,我想用iperf命令测试下两台机器之间的带宽。两台机器已经经过配置保证可以相互ping通。试着在ubuntu上运行iperf客户,fedora上运行iperf服务器,但是每当ubuntu运行iperf后都会显示:connect failed: Permission denied。
开始以为是地址什么的写错了,但是检查n遍后发现地址没有错。同时如果在ubuntu上同时运行客户和服务器就没有问题,可见这个问题跟iperf命令本身包括写法都是没有关系的。之后我决定抓个包看看。抓包的结果让我很是惊讶,问题其实不在ubuntu而在fedora,因为fedora已经收到了ubuntu发来的tcp请求包,但是fedora回复ubuntu说destination
unreachable:unreachable prohibited。很显然是fedora把ubuntu的包给拒绝了,而拒绝的理由是目的地址禁止使用。看来应该是fedora上的防火墙在作怪。
于是我决定想办法关闭fedora防火墙。我先是关闭了selinux,又尝试关闭iptables,但是执行service iptables stop后却提示关闭失败。我也懒得找原因了,就干脆直接iptables -F清空规则,话说这fedora20下的默认iptables规则可真不少。之后试了还是不行。我就想是不是iptables没有真正关闭。之后到网上查了后发现fedora20下除了iptables之外还有一个专门的防火墙服务叫做firewalld,它是一个“动态的防火墙服务”,与iptables的关系可以用一下官网上的话来描述:
If you want to use your own static firewall rules with the iptables and ip6tables services, install iptables-services and disable firewalld
and enable iptables and ip6tables
看出来了吧,firewalld的配置和iptables是相互独立的,所以我之前使劲关闭iptables自然也是没有用的。发现这点后赶紧关了这个万恶的firewalld,果然iperf工作了。
这次的经验是,网上的很多解决问题的经验方法是可取的,只是网友的环境可能与你的环境不同,所以网友的步骤到你这也可能需要更改。所以切忌照搬网友的步骤然后出错就直接否定网上的方法,而应该尝试根据自己的环境修正网上的步骤,如果最后实在不行再尝试别的方法。
开始以为是地址什么的写错了,但是检查n遍后发现地址没有错。同时如果在ubuntu上同时运行客户和服务器就没有问题,可见这个问题跟iperf命令本身包括写法都是没有关系的。之后我决定抓个包看看。抓包的结果让我很是惊讶,问题其实不在ubuntu而在fedora,因为fedora已经收到了ubuntu发来的tcp请求包,但是fedora回复ubuntu说destination
unreachable:unreachable prohibited。很显然是fedora把ubuntu的包给拒绝了,而拒绝的理由是目的地址禁止使用。看来应该是fedora上的防火墙在作怪。
于是我决定想办法关闭fedora防火墙。我先是关闭了selinux,又尝试关闭iptables,但是执行service iptables stop后却提示关闭失败。我也懒得找原因了,就干脆直接iptables -F清空规则,话说这fedora20下的默认iptables规则可真不少。之后试了还是不行。我就想是不是iptables没有真正关闭。之后到网上查了后发现fedora20下除了iptables之外还有一个专门的防火墙服务叫做firewalld,它是一个“动态的防火墙服务”,与iptables的关系可以用一下官网上的话来描述:
If you want to use your own static firewall rules with the iptables and ip6tables services, install iptables-services and disable firewalld
and enable iptables and ip6tables
看出来了吧,firewalld的配置和iptables是相互独立的,所以我之前使劲关闭iptables自然也是没有用的。发现这点后赶紧关了这个万恶的firewalld,果然iperf工作了。
这次的经验是,网上的很多解决问题的经验方法是可取的,只是网友的环境可能与你的环境不同,所以网友的步骤到你这也可能需要更改。所以切忌照搬网友的步骤然后出错就直接否定网上的方法,而应该尝试根据自己的环境修正网上的步骤,如果最后实在不行再尝试别的方法。
相关文章推荐
- linux上搭建eclipse CDT 运行出现 launch failed,binary not found 错误解决办法。 收藏
- Fedora9.0和VMware6.5下编译内核出现arm-linux-gcc无法找到的错误解决办法
- Android安装应用程序出现“INSTALL_FAILED_CONTAINER_ERROR”错误的解决办法
- window下工具访问linux下mysql出现 error no 2003 10061错误的解决办法
- 打开VMware出现Reason: Failed to lock the file.错误的解决办法
- android中使用代码混淆出现Conversion to Dalvik format failed with error 1错误的解决办法
- linux挂载硬盘重启后出现an error occurred during the file system check错误最有效的解决办法
- android中使用代码混淆出现Conversion to Dalvik format failed with error 1错误的解决办法
- android中使用代码混淆出现Conversion to Dalvik format failed with error 1错误的解决办法
- 编译用于Linux-arm 的Qt4.8.0 opensource 出现 clock_gettime() 未找的错误解决办法
- [转]C# post数据时 出现如下错误: System.Net.WebException: 远程服务器返回错误: (417) Expectation Failed 的解决办法
- 安装.NET2.0后运行出现Failed to access IIS metabase错误解决办法.
- 控制台应用程序中调用CFileException 的GetErrorMessage方法时出现“Debug Assertion Failed”错误时的解决办法
- linux下安装kscope1.9.4.tar.gz出现的错误解决办法
- Linux下停Tomcat服务器,出现Connection refused错误解决办法
- C# post数据时 出现如下错误: System.Net.WebException: 远程服务器返回错误: (417) Expectation Failed 的解决办法
- Failed to connect to ourself!错误解决办法
- magento connect manage出现404或者500内部错误的解决办法
- Android下载sdk中出现如下错误时:Failed to rename directory...解决办法
- Android安装应用程序出现“INSTALL_FAILED_CONTAINER_ERROR”错误的解决办法