本文主要是介绍Docker——问题解决:服务器端和Windows端IP互通,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
踩了大坑,特此记录!!!!!
我在服务器端部署了服务,但是在本地端Windows机器上无法访问,因此卡了一天。
1. 双向Ping通
防火墙导致只能单向Ping通
首先需要解决双向ping通的问题,这里我发现服务器端可以ping通Windows端IP,但是Windows端无法Ping通服务器端,因此我怀疑是网络防火墙问题,因此解决方法为:
- 打开防火墙设置,并关闭相关的网络防火墙,即可解决ping通问题。
查看服务器的公网IP
import socket
import requests# 获取私有IP地址
def get_private_ip():try:s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)s.connect(("8.8.8.8", 80))private_ip = s.getsockname()[0]s.close()return private_ipexcept Exception as e:print(f"Error getting private IP: {e}")return None# 获取公有IP地址
def get_public_ip():try:response = requests.get("https://api.ipify.org")public_ip = response.textreturn public_ipexcept Exception as e:print(f"Error getting public IP: {e}")return Noneif __name__ == "__main__":private_ip = get_private_ip()public_ip = get_public_ip()print(f"Private IP: {private_ip}")print(f"Public IP: {public_ip}")
2. 端口访问
端口信息
- 服务器端口
# - 内部端口号:65528
# - 外部端口号:22853
启动步骤
-
当服务器端启动后端服务时,应当指定内部端口启动。
-
当外部需要请求服务器后端服务时,应当使用外部端口进行访问。
这篇关于Docker——问题解决:服务器端和Windows端IP互通的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!