【发布时间】:2020-11-01 04:35:39
【问题描述】:
import socket
host, port = socket.gethostbyname(socket.gethostname()), 5555
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.bind((host, port))
s.listen(5)
while True:
conn, addr = s.accept()
print("<IP-LOGGED> " + addr[0])
r = conn.recv(1024)
print(r.decode("utf-8"))
response = """
HTTP/1.1 200 OK
logger
"""
conn.sendall(bytes(response, "utf-8"))
conn.close()
PS:代码不是我的,它来自 youtube IP 抓取器教程。不,我不是脚本小子,我只是想通过一个示例来理解获取 IP / 使用套接字制作 Web 服务器的概念。我刚开始学习套接字
【问题讨论】:
-
你有你的本地网络,然后是互联网。它们都已连接,但您的路由器具有保护您的防火墙。启用端口转发将使计算机暴露在互联网上,但也意味着来自外部的人可以连接到您计算机上的某些东西。在您的路由器设置中的某处应该有一个选项来端口转发您的计算机ip address 和特定端口。这将是您打开 python 服务器的端口。
标签: python sockets networking ip