作者:蹼蹼蹡蹡Joseph | 来源:互联网 | 2023-10-17 22:21
1、Ipv4只能用于内网,外网只能用2、DNS:把域名解析成ip地址3、MAC地址就是物理地址(网卡序列号) IP地址:电脑序列号4、不同电脑,微信之间互相通信,靠的是端口;
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()