趣谈网络协议

第一讲 为什么要学网络协议

协议三要素

语法,就是这一段内容要符合一定的规则和格式。例如,括号要成对,结束要使用分号等。

语义,就是这一段内容要代表某种意义。例如数字减去数字是有意义的,数字减去文本一般来说就没有意义。

顺序,就是先干啥,后干啥。

常用的协议

应用层(数据封装格式)

DHCP

HTTP

HTTPS

RTMP

P2P

DNS

GTP

RPC

传输层 (会话连接机制、端口号)

UDP

TCP

网络层

ICMP

IP

OSPF

BGP

IPSec

GRE

链路层

ARP

VLAN

STP

物理层

网络跳线

浏览器输入网址后发生了什么事情

查找目标IPd地址

一般通过DNS协议查找,或者HTTPDNS查

结果得到目标ip地址:106.114.138.24

打包请求

此处用了https协议,  无论使用什么协议都会有正文部分

应用层:在http头:请求方式,url地址,协议版本号,正文格式,正文长度

传输层:tcp头:浏览器端口号,电商服务器端口号

网络层:ip头:客户端IP,电商服务器ip

链路层:MAC头:客户端的mac地址,电商服务器的mac

第二讲 网络分层的真实含义是什么

问题:二层设备、三层设备、四层LB、七层LB是什么?

二层设备的处理是mac层的东西,就是只把MAC头摘下来,看看到底是丢弃、转发、还是自己留着

三层设备就是把MAC头摘下来之后,再把IP头摘下来,看看到底是丢弃、转发、还是自己留着

只要是在网络上跑的包,都是完整的。可以有下层没上层,绝对不可能有上层没下层。

第三讲 ifconfig:最熟悉又陌生的命令行

windows:ipconfig

linux:ifconfig、 ip addr

root@test:~# ip addr1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00    inet 127.0.0.1/8 scope host lo      valid_lft forever preferred_lft forever    inet6 ::1/128 scope host        valid_lft forever preferred_lft forever2: eth0: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000    link/ether fa:16:3e:c7:79:75 brd ff:ff:ff:ff:ff:ff    inet 10.100.122.2/24 brd 10.100.122.255 scope global eth0      valid_lft forever preferred_lft forever    inet6 fe80::f816:3eff:fec7:7975/64 scope link        valid_lft forever preferred_lft forever复制代码

IP地址是一个网卡在网络世界的通讯地址,相当于我们现实世界的门牌号码。

以上内容,IP地址为:10.100.122.2。


链接:https://pan.baidu.com/s/1v5gm7n0L7TGyejCmQrMh2g 提取码:x2p5

免费分享,但是X度限制严重,如若链接失效点击链接或搜索加群 群号936682608,点击链接

32的IP地址被分成了5类,A、B、C类主要分两部分,前面一部分是网络号,后面一部分是主机号。

无类型域间选路(CIDR)

把IP地址一分为二,前面的是网络号,后面的是主机号。

10.100.122.2/24,前面24位是网络号,后面8位是主机号

广播地址10.100.122.255

子网掩码255.255.255.0

网络号将子网掩码和IP地址按位计算AND,就可以得到网络号:10.100.122.0

公有IP地址和私有IP地址

装换公式

ip=>机器号、网络号先看CIDR,如果是8的整数倍,则不需要转换成2进制,前部分为机器号,后部分为网络号;如果不是8的整数倍,则需要把分界十进制转换成2进制,同样,前部分为机器号,后部分为网络号ip=>第一个地址前部分+ 1(二进制)ip=>子网掩码前部分(1)+ 后部分(0)如:255.255.<111111><00>.00  => 255.255.252.0ip=>广播地址

算一个IP地址的求一下这个网络的第一个地址、子网掩码和广播地址

16.158.165.91/22

/22 不是8的倍数,要转换成2进制

16.158.165.91 =》 16.158.<101001><00>.91,则网络号为16.158.<101001>,机器号是<00>.91

第一个地址16.158.<101001><00>.1,即16.158.164.1

子网掩码是255.255.<111111><00>.0,即255.255.252.0,

广播地址16.158.<101001><11>.255,即16.158.167.255

MAC 地址

link/ether fa:16:3e:c7:79:75 brd ff:ff:ff:ff:ff:ff

是一个网卡的物理地址,用十六进制,6个byte表示

MAC地址更像是身份证,是一个唯一的标识

网络设备的状态标识

eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000

叫做net_device flags,网络设备的状态标识

UP标识网卡处于启动状态

BROADCAST标识这个网卡有广播地址,可以发送广播包

MULTICAST 标识可以发送多播包

LOWER_UP 标识 启动,即网线是插着的

mtu 1500 最大传输单元MTU(MAC层)为1500,这是以太网的默认值

qdisc pfifo_fast qdisc全称queueing discipline中文叫排队规则。

总结

IP是地址,有定位功能;MAC是身份证,无定位功能

CIDR可以用来判断是不是本地人

IP分公有IP和私有IP

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。