我的網站部署搭建在本地服務器上的,在內網可以正常訪問,但是外網無法訪問,該怎么排查?局域網內部經過路由器的,有設置了虛擬服務器轉發規則,在互聯網公網上還是無法訪問服務器怎么辦?相信很多人都會遇到類似的內網讓公網使用的跨網問題,下面來看看詳細的原因和排查方法。
本地服務器部署后外網訪問不了的原因主要有以下幾種?:
1、服務器狀態?
檢查服務器是否開啟,并在局域網內測試是否能成功訪問。如果服務器未開啟或網絡不通,外網訪問也會失敗?。
確認服務器狀態?:在局域網內測試服務器是否開啟并能正常訪問。
2、程序端口開放情況?
確保所有必要的端口都已開放。例如,如果是使用Tomcat等應用,需要確保站點用的如8080端口已開放。可以通過本地telnet端口號,或查看防火墻設置來確認端口是否開放?。
開放必要端口?:在路由器和本地服務器的防火墻中開放所有必要的端口。
3、防火墻設置?
檢查路由器和本地服務器的防火墻設置,確保沒有過濾掉服務器通信的端口。如果防火墻設置了過濾規則,可能會導致訪問失敗?。
檢查防火墻設置?:確保沒有過濾掉服務器通信的端口。
4、路由器端口映射問題?
網絡帶寬線路經過路由設備的,需要確保路由器端口映射設置正確,即端口轉發規則是否正確映射到內網的服務器IP地址。如果端口映射設置不正確,外網用戶將無法訪問內網服務器?。
檢查并正確設置端口映射?:確保端口轉發規則正確映射到服務器的IP地址和端口。
4、特殊應用問題?
對于一些特殊應用(如FTP、VoIP等),可能需要路由器支持應用層網關(ALG)功能。如果路由器不支持所需協議,也會導致訪問失敗?。
特殊應用支持?:對于特殊應用,確保路由器支持所需協議。如FTP是多端口使用的,需要確保所使用的多個端口號都放行。
5、服務商屏蔽?
有些情況下,服務商可能屏蔽了相應的端口,導致外網無法訪問。可以通過在路由器WAN口接一臺電腦模擬內外網環境進行測試?,并通過更換其他非常規進行訪問測試。
測試服務商屏蔽?:通過模擬內外網環境測試是否被服務商屏蔽端口?,通過更換非常規端口號測試。
6、無公網IP網絡環境
家庭帶寬和普通公司接入網絡時,默認沒有獲取分配到公網IP,這時需要借助類似nat123這樣的網絡端口映射工具,實現內網地址提供給互聯網使用。
內網IP端口變公網地址:使用nat123客戶端添加映射,并自定義好對應內外網地址,然后通過自己域名或自動生成的二級域名進行連接訪問,且固定域名可以在任意互聯網上網地方使用的。
附:檢查本地是否公網IP的方法
對比自己本地路由后臺WAN口IP和百度搜索“IP”結果的IP地址,來判斷:
-如果一樣的,表示自己路由獲取的是公網IP;
-如果不一樣,則表示自己路由本身是內網IP,經過本地網絡商中轉后的私有地址。