***网络编程就是,让在不同的电脑上的软件能够进行数据传递,即进程之间的通信
***子网掩码:
1.子网掩码不能单独存在,它必须结合IP地址一起使用。
2.子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地 址两部分子网掩码的设定必须遵循一定的规则。
3.与IP地址相同,子网掩码的长度也是32位
***UDP:
udp是面向无连接的通讯协议UDP是面向无连接的通讯协议,UDP数据包括 目的端口号和源端口号信息,由于通讯不需要连接,所以可以实现广播发 送。 UDP传输数据时有大小限制,每个被传输的数据报必须限定在64KB之 内。 UDP是一个不可靠的协议,发送方所发送的数据报并不一定以相同的 次序到达接收方。
***socket:
进程间通信的一种方式,实现了不同主机间的进程间通信
【udp 发消息】
from socket import*
u_socket=socket(type=SOCK_DGRAM)
data=input('请输入数据:')
#数据信息,ip和端口号
add=('192.168.13.60',5678)
#发送信息
u_socket.sendto(data.encode('gbk'),add)
u_socket.close()
【udp 收消息】
from socket import*
u_socket=socket(type=SOCK_DGRAM)
#监听目标 ip 和端口
u_socket.bind('192.168.13.60',8080)
#接收消息
data,add=u_socket.recvfrom(1024)
print('[Recieve from %s:%s]:%s'%(add[0],add[1],data.decode('gbk')))
u_socket.close
【广播】
from socket import *
udp_socket = socket(type=SOCK_DGRAM)
udp_socket.bind(('',12345))
#支持广播,对这个需要发送广播数据的套接字进行修改设置,否则不能发送 广播数据
udp_socket.setsockopt(SOL_SOCKET,SO_BROADCAST,1)
data = input('>')
address=('<broadcast>',2425)
udp_socket.sendto(data.encode('gbk'),address)
udp_socket.close()
print('ok')