主要内容:
- 了解网络编程的三要素(3个必要条件)
- 基于UDP协议的网络编程
- 基于TCP协议的网络编程
网络编程概述:
网络编程主要解决的问题? 实现多台设备之间的数据传输
网络编程的三要素:
- ip :用来标识计算机在网络中的唯一性
- 端口号 : 用来标识计算机中某一个进程的唯一性
- 协议 : 数据传输的规则
ip地址
ip地址作用: 就是用来标识某一设备在网络中的唯一性
ip地址的分类 : ipv4 和 ipv6 (现在大部分是ipv4)
ipv4版的ip地址地址是一个32位(也就是4个字节)的二进制数,通常被分割为4部分,每一部分占8位。(由于每一部分只占用1个字节,因此每一部分的取值范围是:0~255)各个部分使用"."进行分割。如下所示:
01100100.00000100.00000101.00000110
但是由于二进制数在日常生活中使用起来并不是特别的方便,因此后期在使用的时候会把每一部分转换成对应的十进制。这种计数方式被称之"点分十进制"。上面的ip地址如果使用点分十进制进行表示,那么就是:100.4.5.6 。
即使使用点分十进制的表示方式来表示一个ip地址,也并不是特别容易记忆。为了方便记忆,我们可以使用"一连串用点分隔的名字字符"来表示ip地址,比如: http://www.itcast.cn ; 这"一连串用点分隔的名字字符专业术语为域名。
后期访问某一台计算机的时候,可以直接通过域名进行访问,在公网上会存在一个DNS(域名解析服务器),通过这个DNS服务器就可以把这个域名解析成对应的ip地址,然后通过ip地址找到对应的计算机。
ipv6的由来: 现今的互联网络发展蓬勃,截至2018年1月,全球上网人数已达40.21亿,IPv4仅能提供约42.9亿个IP位置。随着互联网的发展,IPV4在某一个时间点就会枯竭,为了解决ip地址枯竭问题,ipv4的下一代版本ipv6就应运而生。
Ipv6的表示方式: IPv6具有比IPv4大得多的地址空间。这是因为IPv6采用128位的地址,而IPv4使用的是32位。因此ipv6版的ip地址支持2^128(3.4 * 10 ^ 38)个ip地址。IPv6二进位制下为128位长度,以16位为一组,每组以冒号":"隔开,可以分为8组,每组以4位[十六进制](https://zh.wikipedia.org/wiki/十六進制)方式表示。例如:
2001:0db8:85a3:08d3:1319:8a2e:0370:7344
同时IPv6在某些条件下可以省略:
1. 每项数字前导的0可以省略,省略后前导数字仍是0则继续,例如下组IPv6是等价的。
2、可以用双冒号"::"表示一组0或多组连续的0,但只能出现一次:
常见的命令
常见的dos命令
ipconfig : 查看当前主机在本局域网内的ip地址
ping ip 地址: 检测本机与指定的ip地址的主机的连通性
ipconfig使用如下:
打开dos窗口,直接输入ipconfig即可
以太网适配器 以太网:
连接特定的 DNS 后缀 . . . . . . . :
本地链接 IPv6 地址. . . . . . . . : fe80::e009:947a:77b9:b3da%11
IPv4 地址 . . . . . . . . . . . . : 192.168.29.89
子网掩码 . . . . . . . . . . . . : 255.255.255.0
默认网关. . . . . . . . . . . . . : 192.168.29.1
%11表示的是某一个网卡的标号(11&#x