网络编程
1.两种构架:(1)C/S构架:client, server
(2) B/S构架:browser,server
2.地址相关:(1)MAC地址,物理地址,唯一,但可以更改
(2)ip地址,网络地址,网络位置,可更改。
3.相关设备知识:(1)交换机:局域网内用来连接各电脑,实现局域网内通信;
无法直接识别IP地址;
先广播,在通过返回信息中的MAC地址实现一对一通信;
即通过一台机器的IP地址找到其MAC地址:arp协议,地址解析协议
(2)路由器:实现不同局域网之间的通信;
(3)网关ip:一台机器对局域网外地址进行通信、访问时,使用的出口ip
4.端口:端口对应机器上具体应用对应的服务 0~65535;9000之后一般随便用,之前的端口有惯用端口,可能被占用
格式 IP地址 : 端口号 例:192.168.0.1:8080
5.子网掩码:和IP地址与运算,用来界定不同地址是否是同一网段 例:255.255.255.0
6.常用的网段划分:全网段 0.0.0.0~255.255.255.255
局域网三种:10.0.0.0~10.255.255.255
172.16.0.0~172.16.255.255
192.168.0.0~192.168.255.255 65535个地址
本地回环地址 127.0.0.1
全网段地址 0.0.0.0
7.socket
1 # 服务端举例 2 3 import socket 4 5 sk = socket.socket() 6 sk.bind((''127.0.0.1,9008)) 7 sk.listen() 8 9 conn,addr = sk.accept() 10 conn.send('server_test') 11 msg = conn.recv(1024) 12 print(msg,addr) 13 14 conn.close() 15 sk.close()
1 # 客户端举例 2 3 import socket 4 5 sk = socket.socket() 6 sk.connect(('127.0.0.1',9008)) 7 8 msg = sk.recv(1024) 9 print(msg) 10 sk.send('client_test') 11 12 sk.close()