1、Ipv4只能用於內網,外網只能用
2、DNS:把域名解析成ip地址
3、MAC地址就是物理地址(網卡序列號)
IP地址:電腦序列號
4、不同電腦,微信之間互相通信,靠的是端口;
同一台電腦上,不同的應用軟件之間靠的是pid
5、IP地址 +協議+端口就可以標識一個進程
6、UDP協議:user datagram protocol,用戶數據報協議,只管發送,不關心是否被成功接收,管殺不管埋。
Socket:套接字,進程間通信的一種方式。
##發送 import socket #socket可以在不同電腦之間通信;也可用於同一台電腦的不同程序進行通信 #socket參數(family=-1, type=-1, proto=-1, fileno=None) #socket.AF_INET 用來網絡鏈接 #socket.SOCK_DGRAM 用來表示此連接是UDP連接 #創建了一個基於udp協議的網絡socket s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) # sendto參數:data:要發送的數據,是二進制的 # Address是一個元組,第0個代表發的IP地址,第1個代表端口號 #給192.168.74.128這台電腦的9000端口發送了9000 s.sendto('你好'.encode('utf8'),('192.168.74.128',9000)) #關閉 s.close()
#接收 import socket #socket可以在不同電腦之間通信;也可用於同一台電腦的不同程序進行通信 #socket參數(family=-1, type=-1, proto=-1, fileno=None) #socket.AF_INET 用來網絡鏈接 #socket.SOCK_DGRAM 用來表示此連接是UDP連接 #創建了一個基於udp協議的網絡socket s=socket.socket(socket.AF_INET,socket.SOCK_DGRAM) #綁定端口號和ip地址 s.bind('192.168.74.128',9000) #接收數據buffersize flag #接收到的數據是個元組,第0代表接收到的內容,第1代表發送放的ip地址和端口號 data,addr = s.recvfrom(1024) print('從{}地址{}端口號接收到了消息,內容:{}'.format(addr[0],addr[1],data.decode('utf8'))) #關閉 s.close()