TCP/IP协议是分成了4层,osi是7层,tcp的应用层等于osi的上三层(应用层,表示层,会话层),
tcp osi
传输层 传输层
internet 网络层
数据链路层 数据链路层
物理层 物理层
交换机,
网桥,(数据链路层,跟交换机原理一样,根据mac地址来转发数据,在转发数据,mac表的信息是通过学习数据包的源地址,转发数据是根据目标的mac地址来进行转发的)
路由
跟mac地址相关的 arp 协议,address resolution protocol地址解析协议,把ip地址转换成mac地址,
arp是基于广播的,如果跨网段通讯,是一段一段进行通讯
在windows和linux都可以查到arp缓存表(只要通讯过一次就在你的电脑里记录mac地址生成arp缓存表)
arp协议属于internet层对应网络层
‘传输层UDP,TCP协议,区别主要是因为他的报文首部’,格式不同决定的,
TCP报文首部里有编号,确认号,此外还有标记,6个标记位,关键的在于建立会话,三次握手,
四次挥手,相关的重要的有三个标记位,SYN,FIN,ACK,这些不同的位标记起来,就可以让会话处于不同的状态,三次握手和四次挥手处于那种状态下,有11种状态
**ip的信息,
ip的格式:版本,ip来自于哪个包的标识,此外还有分片的标记位,ip协议包含有关键的地址,源ip地址和目标ip地址,
ip位数:
ipv4是32位,有些位是网络id位,有些是主机位,
部分明确规定哪些是网络id位,后面的哪些位是主机位
其中网络id在最前面,这些位有多少位,和ABCD的划分方式
传统的ip地址是分类的,只要看清哪一类密切相关
网络id位就标识出这个ip在哪个网段(网络id就等于网段的编号)
**
也可能在交换机里,两台主机配的ip地址不一样,
172是B类,,B类是前16位网络id位
这两个不在一个网段里
物理上在一个网段(一个路由里面)
逻辑上不在一个网段(IP地址不一样,网络id位)
查看路由表 route -n
ip route
**有类D abcd方式 IP规划太浪费
所以用无类CIDR 无类域间路由
netmask 子网掩码 查看哪些位是网络id ,
netmask:32位进制数,一般写是十进制,网络id位数,netmask对应就是1,主机id数,netmask为0
如果前面16位是网络id ,就是netmask前16为1 **
A类是前八位是网络id
对应的子网掩码是255.0.0.0
B类是16位wangluoid
对应的子网掩码是255.255.0.0
C类是前24位是网络id
对应的子网掩码是255.255.255.0
D类地址没有子网掩码
这些都可能成为子网掩码
**172.20.0.123网络id是22位,netmask 子网掩码是多少?
255.255.252.0
还有一种写子网掩码的方式 IP/网络ID数(CIDR 无类域间路由表示法)
172.20.0.123/22 **
1.200.222.123.23/26
子网掩码等于 255.255.255.192
2.主机数是2^(32-26)-2=62
公式:
1.网络(网段)数量=2^可变网络id位数
2.一个网络的主机数量=2^主机id位数-2=2的(32-网络id位数)的次方-2
3.网络id=ip与子网掩码netmask
两个路由器之间只需要2个地址
题目反推:2^(32-网络id位数)-2=2
主机id位数=2
网路id位数=30
netmask=255.255.255.252
先要判断是否在一个网段,是直接转发还是经过路由器
如何判断两个主机在一个网段里,计算网络id
是否在一个网段
1.192.168.100/16
255.255.1.100 在一个网段
判断统一网段要从哪个角度来看,
如果A 发到B
用16位
如果B发到A
用24位
上网的,
ip不一样的肯定不在一个网段,找网关,网关必须跟你一个网段(网关就是路由器)
单臂路由,这个接口需要配2个地址,一个是172.20跟A一个网段,一个是172.18跟B一个网段,
网关和你的主机必须在一个网段
网关的作用来连接不同网段的主机的
1.192.168.199.111/21网络id
网络id=192.168.199=11000111
255.255.11111000=248.0
192.168.11000000=192
2.netmask=255.255.248.0
3.主机数=2^(32-21)-2=2046
4. min ip 192.168.11000000.00000001 不能为0 192.168.192.1/21
max ip 192.168.11000 111.11111110 不能全部为1 192.168.199.254/21
1.网络id= 222.111.188.64
192=11000000
123=01xxxxxx
2.CIDR 222.111.188.123/26
3.主机数 =2^(32-26)-2=62
4.min ip 222.111.188.65
max ip 222.111.188.126