linux內socket服務器無法連接windows


今天在試socket的時候出現了一個問題:問題概述是這樣的:

1.linux采用centOS7(mini)版本,虛擬機版本VMware12,網卡設置NAT

2.服務器和客戶端都在windows上,通訊正常

3.服務器和客戶端都在linux上,通訊正常

4.服務器在linux上,客戶端在windows上,通訊失敗,錯誤提示:

'''
TimeoutError: [WinError 10060] 由於連接方在一段時間后沒有正確答復或連接的主機沒有反應,連接嘗試失敗。
'''

解決思路:

1.在windows和linux互相ping對方ip,連接正常。

2.先用secureCRT連了虛擬機,ssh客戶端工作正常,說明linux和windows組網是成功的。

3開啟windows功能中的telnet客戶端后,在cmd內ping linux的端口號,連接失敗。說明ip是通的,但端口無法連接。

4.第3條的原因是linux的防火牆工作導致,關掉防火牆

centOS7內的防火牆關閉方法

查看狀態:systemctl status firewalld

啟動: systemctl start firewalld

關閉: systemctl stop firewalld

查看狀態: systemctl status firewalld

開機禁用 : systemctl disable firewalld

開機啟用 : systemctl enable firewalld

[root@localhost ~]# systemctl stop firewalld

重新在cmd內

C:\Users\Aaron>telnet 190.168.75.130 9999

回車,成功。

可以把防火牆關閉,也可以對防火牆開放一個固定的端口,使用時會比較安全。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM