踩了大坑,特此记录!!!!!
我在服务器端部署了服务,但是在本地端Windows机器上无法访问,因此卡了一天。
1. 双向Ping通
防火墙导致只能单向Ping通
首先需要解决双向ping通的问题,这里我发现服务器端可以ping通Windows端IP,但是Windows端无法Ping通服务器端,因此我怀疑是网络防火墙问题,因此解决方法为:
- 打开防火墙设置,并关闭相关的网络防火墙,即可解决ping通问题。
查看服务器的公网IP
python
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_ip
except 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.text
return public_ip
except Exception as e:
print(f"Error getting public IP: {e}")
return None
if __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. 端口访问
端口信息
- 服务器端口
python
# - 内部端口号:65528
# - 外部端口号:22853
启动步骤
-
当服务器端启动后端服务时,应当指定内部端口启动。
-
当外部需要请求服务器后端服务时,应当使用外部端口进行访问。