python UDP的发送与接收socket

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()

 

posted @ 2020-10-31 00:28  aslmer  阅读(983)  评论(0编辑  收藏  举报