# 客户端 import socket c = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) while True: data = input(">>:") c.sendto(data.encode("utf-8"),("127.0.0.1",9999)) msg = c.recvfrom(1024) print(msg) # 服务器 import socket c = socket.socket(socket.AF_INET,socket.SOCK_DGRAM) c.bind(("127.0.0.1",9999)) while True: msg,addr = c.recvfrom(1024) c.sendto(msg.upper(),addr)
当我们要访问一个地址如www.baidu.com时
2.如果本地DNS中没有想要的记录,则本地DNS,会询问根(1级)域名服务器,全球有13台
根域名服务器中不可能存储全世界所有IP所以它仅存储顶级(2级)域名服务器的IP
例如:COM域主服务器的IP,NET域主服务器的IP
3.于是本地DNS得到COM域服务器IP后向其发送请求,
4.由于一个域名可以对应多个IP所以还需要向三级域名主机发出请求
5.最后将返回的IP信息缓存到本地DNS中备用
这样一来就造成一个问题 当一个已存在的域名更换IP后在一段时间内是无法访问的,因为子域名服务器需要到达指定时间后才会自动刷新纪录