网络编程实战
ip地址的分类:
1、ipv4、ipv6
127.0.0.1:4个字节组成,0-255,42亿;30亿都在北美,亚洲就只有4亿
2011年就用尽了。
ipv6:
![在这里插入图片描述](https://img-blog.csdnimg.cn/8e455918e04941f5bbca984694bcad25.png)
2、公网ip、私网ip
实践获得ip地址
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-z7IGWBKf-1632478347259)(C:\Users\逍遥\AppData\Roaming\Typora\typora-user-images\image-20210924001515647.png)]](https://img-blog.csdnimg.cn/9cd71a523fc74db8b045e5bc5c64e5cc.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA572R5LqL6ZqP6aOOMjAxNw==,size_14,color_FFFFFF,t_70,g_se,x_16)
端口
端口表示计算机上的一个程序的进程(大概可以这么理解)
比如说一栋楼,是一个ip,每一户都是端口号。
不同的进程有不同的端口号。
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-J6DqzmBO-1632478347264)(C:\Users\逍遥\AppData\Roaming\Typora\typora-user-images\image-20210924001801626.png)]](https://img-blog.csdnimg.cn/def3d834f2244f9c9147fc31caade6d3.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA572R5LqL6ZqP6aOOMjAxNw==,size_12,color_FFFFFF,t_70,g_se,x_16)
TCP聊天实现
![在这里插入图片描述](https://img-blog.csdnimg.cn/0b4148cc92044c5cabf7e7d8cb471a64.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA572R5LqL6ZqP6aOOMjAxNw==,size_15,color_FFFFFF,t_70,g_se,x_16)
TCP文件上传
![在这里插入图片描述](https://img-blog.csdnimg.cn/04f63b681a544e03a6a1d608cdb4d69b.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA572R5LqL6ZqP6aOOMjAxNw==,size_13,color_FFFFFF,t_70,g_se,x_16)
UDP
![在这里插入图片描述](https://img-blog.csdnimg.cn/4eaa3b893368432e85e09be23ac5f91b.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA572R5LqL6ZqP6aOOMjAxNw==,size_14,color_FFFFFF,t_70,g_se,x_16)
对于UDP并不是很强调客户端或者服务端的概念,谁都可以做服务端客户端的。
UDP聊天实现
注意string是不可读的,必须转成字节!
![在这里插入图片描述](https://img-blog.csdnimg.cn/a4275b7ca6ba4fbea232f512ba0714fe.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA572R5LqL6ZqP6aOOMjAxNw==,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/7ff186fdfef94371b2492c8592752abc.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA572R5LqL6ZqP6aOOMjAxNw==,size_20,color_FFFFFF,t_70,g_se,x_16)
UDP实现多线程聊天
发送端
![在这里插入图片描述](https://img-blog.csdnimg.cn/09db7513768544138a0eca587d115c06.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA572R5LqL6ZqP6aOOMjAxNw==,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/1c3bac71787c405498ec902e06cf9113.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA572R5LqL6ZqP6aOOMjAxNw==,size_20,color_FFFFFF,t_70,g_se,x_16)
接收端
![在这里插入图片描述](https://img-blog.csdnimg.cn/3540e35a96e44b379ce017e15bd32ef7.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA572R5LqL6ZqP6aOOMjAxNw==,size_20,color_FFFFFF,t_70,g_se,x_16)
![在这里插入图片描述](https://img-blog.csdnimg.cn/5a5f3287acce40529a42853392f0e8ba.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA572R5LqL6ZqP6aOOMjAxNw==,size_20,color_FFFFFF,t_70,g_se,x_16)
然后开启两个线程
![在这里插入图片描述](https://img-blog.csdnimg.cn/06db98bbfe4d4aa7b690951d0bc1c270.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA572R5LqL6ZqP6aOOMjAxNw==,size_15,color_FFFFFF,t_70,g_se,x_16)
URL下载资源
![在这里插入图片描述](https://img-blog.csdnimg.cn/b21e8b64b1724541a8b25fd736cd1aa1.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA572R5LqL6ZqP6aOOMjAxNw==,size_16,color_FFFFFF,t_70,g_se,x_16)