Linux云盘算SRE-第三周
1. 磁盘存储术语总结: head, track, sector, sylinder.head:磁头,硬盘中一般会有多个盘片组成,每个盘片包含两个面,每个盘面都对应地有一个读/写磁头。
track:磁道,盘面上的每一圈就是一个磁道。
sector:扇区,把每个磁道按512bytes大小再进行划分,这就是扇区,扇区是磁盘的最小组成单元,每个磁道上的扇区数目是不一样的。
sylinder:柱面,硬盘通常由重叠的一组盘片构成,每个盘面都被划分为数目相当的磁道,并从外缘的“0”开始编号,具有雷同编号的磁道形成一个圆柱,称之为磁盘的柱面。
2. 总结MBR,GPT结构。
MBR 是 Master Boot Record 的缩写,是一种利用最为广泛的分区结构,它也被称为DOS分区结构,但它并不但仅应用于Windows系统平台,也应用于Linux,基于X86的UNIX等系统平台。
MBR扇区由以下四部分组成:
引导代码:引导代码占MBR分区的前440字节,负责整个系统启动。如果引导代码被粉碎,系统将无法启动。
Windows磁盘署名:占引导代码背面的4字节,是Windows初始化磁盘写入的磁盘标签,如果此标签被粉碎,则系统会提示“初始化磁盘”。
MBR分区表:占Windows磁盘标签背面的64个字节,是整个硬盘的分区表。
MBR结束标记:占MBR扇区最后2个字节,不停为“55 AA”。
MBR分区中一块硬盘最多有4个主分区,也可以3主分区+1扩展(N个逻辑分区) 。MBR分区:主和扩展分区对应的1--4,/dev/sda3,逻辑分区从5开始,/dev/sda5。
GPT 是 Globally Unique Identifier Partition Table的缩写,即全局唯一标识分区列表,是一个物理硬盘的分区结构。它用来更换BIOS中的主引导记载分区表(MBR)。
GPT磁盘分区结构解决了MBR只能分4个主分区的的缺点,最多答应 128 个分区,答应大于 2 TB 的卷容量,利用128位UUID表示磁盘和分区,GPT分区表自动备份在头和尾两份, 并有CRC校验位。由于分区表提供了复制和循环冗余校检 (CRC) 保护,以是更加可靠。
3. 总结学过的分区,文件系统管理,SWAP管理相关的命令及示例(加注释),示例 fdisk, parted, mkfs, tune2fs, xfs_info, fsck, mount, umount, swapon, swapoff
管理存储:
lsblk #列出块设备
#常用选项
-a #输出所有设备信息
-f #以字节为单位显示设备大小
-I #仅显示指定的设备
-T #以树状结构显示,默认项
-m #显示属主属组及权限
-p #显示设备全路径
fdisk #管理MBR分区
#常用选项
-b #指定扇区大小,默认512字节
-L #显示时是否添加颜色(auto|always|never)默认启用颜色
-l #显示
-o #只显示指定列
-u #设置显示单位 cylinders|sectors,默认sectors
-s #显示设备有多少个扇区
-b|--bytes N #以指定的字节大小来计算扇区数量
-t|--type type #只显示指定类型的分区表
-C|--cylinders N #指定柱面数
-H|--heads N #指定磁头数
-S|--sectors N #指定每条磁道的扇区数
#常用子命令
p #输出分区列表
t #更改分区类型
n #创建新分区
d #删除分区
v #校验分区
u #转换单位
w #保存并退出
q #不保存并退出
x #高级功能(专家模式)
gdisk #管理GPT分区
#常用子命令
b #备份分区表到指定文件
c #修改分区名
d #删除分区
i #显示分区详细信息
l #列出所有分区类型
n #新建分区
o #创建新的分区表
p #查看分区
q #退出
r #恢复和转换选项,非专业人士勿用
s #排序
t #修改分区类型,默认 8300,表示普通分区
v #检测硬盘是否有问题
w #保存退出
x #额外功能,专家模式
? #显示帮助
parted #高级分区操作,可以是交互或非交互方式
-l|--list #显示所有硬盘分区信息
-s|--script #不输出提示信息
partprobe #重新设置内存中的内核分区表版本,适合于除了CentOS 6 以外的其它版本 5,7,8 文件系统:
mkfs #创建文件系统
#常用选项
-t #指定文件系统类型 (ext2|ext3|ext4|xfs),默认 ext2
-b #指定块 block 大小 (1024|2048|4096)
-L LABEL #修改卷标
-V #显示创建过程
-j #同 -t ext3
-i N #为数据空间中每多少个字节创建一个inode;不应该小于block大小
-N N #指定分区中创建多少个inode
-I N #一个inode记录占用的磁盘空间大小,128---4096
-m N #默认5%,为管理人员预留空间占总空间的百分比
-O FEATURE[,...] #启用指定特性
-O ^FEATURE #关闭指定特性
mke2fs #ext系列文件系统专用管理工具
#常用选项
-t #指定文件系统类型 {ext2|ext3|ext4|xfs}
......同mkfs选项
**#查看和管理分区信息**
blkid #查看块设备属性信息
e2label #管理ext系列文件系统的LABEL
findfs #查找分区
tune2fs #重新设定ext系列文件系统可调整参数的值
#常用选项
-l #查看指定文件系统信息
-L LABEL #修改卷标
-m N #修预留给管理员的空间百分比
-j #将ext2升级为ext3
-O #文件系统属性启用或禁用, -O ^has_journal
-o #调整文件系统的默认挂载选项,-o ^acl
-U UUID #修改UUID号
dumpe2fs #显示ext文件系统信息,将磁盘块分组管理
xfs_info #显示已挂载的 xfs 文件系统信息
fsck #文件系统检测和修复
-a #自动修复
-r #交互式修复错误
e2fsck #ext系列文件专用的检测修复工具
-y #自动回答为yes
-f #强制修复
-p #自动进行安全的修复文件系统问题
xfs_repair #xfs文件系统专用检测修复工具
-f #修复文件,而设备
-n #只检查
-d #允许修复只读的挂载设备,在单用户下修复 / 时使用,然后立即reboot 挂载:
mount #挂载文件系统
#常用命令选项
-a|--all #自动挂载所有支持自动挂载的设备(定义在了/etc/fstab文件中,且挂载选项中有auto功能)
-B|--bind #绑定目录到另一个目录上
-c|--no-canonicalize #不对路径规范化
-f|--fake #空运行;跳过 mount(2) 系统调用
-F|--fork #对每个设备禁用 fork,配合-a 选项一起使用
-T|--fstab path #指定写文件,默认 /etc/fstab
-i|--internal-only #不调用 mount.<type> 辅助程序
-l|--show-labels #显示文件系统的 labels
-n|--no-mtab #不更新/etc/mtab,mount不可见
-o|--options o1,o2 #挂载选项列表,以英文逗号分隔
-O|--test-opts o1,o2 #限制文件系统集合(和 -a 选项一起使用)
-r|--read-only #以只读方式挂载文件系统(同 -o ro)
-t|--types #指定要挂载的设备上的文件系统类型,如:ext4,xfs
--source device #指明源(路径、标签、uuid)
--target mountpoint #指明挂载点
-v|--verbose #显示过程
-w|--rw|--read-write #以读写方式挂载文件系统(默认)
-L LABEL #以卷标指定挂载设备
-U UUID #以UUID指定要挂载的设备
#-o选项值
async #异步模式,内存更改时,写入缓存区buffer,过一段时间再写到磁盘中,效率高,但不安全
sync #同步模式,内存更改时,同时写磁盘,安全,但效率低下
atime/noatime #包含目录和文件
diratime/nodiratime #目录的访问时间戳
auto/noauto #是否支持开机自动挂载,是否支持-a选项
exec/noexec #是否支持将文件系统上运行应用程序
dev/nodev #是否支持在此文件系统上使用设备文件
suid/nosuid #是否支持suid和sgid权限
remount #重新挂载
ro/rw #只读/读写
user/nouser #是否允许普通用户挂载此设备,/etc/fstab使用
acl/noacl #启用此文件系统上的acl功能
loop #使用loop设备
_netdev #当网络可用时才对网络资源进行挂载,如:NFS文件系统
defaults #相当于rw, suid, dev, exec, auto, nouser, async
#--source 选项值
-L|--label label#同 LABEL=label
-U|--uuid uuid #同 UUID=uuid
LABEL=label #用label值指定设备
UUID=uuid #用uuid值指定设备
PARTLABEL=label #按PARTLABEL值指定设备
PARTUUID=uuid #按PARTUUID值指定设备
device #按路径指定设备
directory #绑定式挂载的挂载点(参阅 --bind/rbind)
file #用于设置回环设备的常规文件
umount #卸载文件系统
umount [-hV]
umount -a
umount <source> | <directory>
#查看挂载情况
mount #通过mount命令查看
cat /etc/mtab #通过查看/etc/mtab文件显示当前已挂载的所有设备
cat /proc/mounts#查看内核追踪到的已挂载的所有设备
#查看挂载点情况
findmnt
findmnt <device> | <mountpoint>
findmnt <device> <mountpoint>
findmnt [--source <device>] [--target <path> | --mountpoint <dir>]
#查看正在访问指定文件系统的进程
lsof
fuser -v
#终止所有在正访问指定的文件系统的进程
fuser -km SWAP管理:
swapon #启用swap分区
#常用选项
-a|--all #激活 /etc/fstab 中的所有交换区
-d|--discard[=policy] #根据条件禁用(once|pages)
-e|--ifexists #自动跳过不存在的设备而不提示
-f|--fixpgsz #必要时重新初始化交换区
-o|--options list #指定选项,swapon -o pri=1,discard=pages,nofail /dev/sda2
-p|--priority N #指定交换设备的优先级(-1到32767),值越大优先级越高,也可在/etc/fstab第4列指定pri=value
-s|--summary #显示已使用交换设备的摘要
--show[=columns] #以可自定义的表格形式打印摘要swapon --show|swapon --show=NAME,TYPE
--noheadings #不打印表头,配合 --show 选项
--raw #使用原生输出格式,配合 --show 选项
--bytes #在 --show 输出中以字节数显示交换区大小
-v|--verbose #显示详细信息
swapoff #禁用swap分区
-a|--all #禁用 /proc/swaps 中的所有交换区
-v|--verbose #显示过程
mkswap #创建swap分区文件系统 https://i-blog.csdnimg.cn/direct/d23f39323ef747a6bc5bc351de72e3f1.png
https://i-blog.csdnimg.cn/direct/0c2c861adcb546d79e9074a97338b2ea.png
https://i-blog.csdnimg.cn/direct/3c4d0d64c66e47aca5724951ac18f902.png
https://i-blog.csdnimg.cn/direct/7c62e4e2893a4ca7b6d20449857790f8.png
https://i-blog.csdnimg.cn/direct/3ffe0d40c9d24e16b4079030a2e4d362.png
https://i-blog.csdnimg.cn/direct/0af6242a2a5f482c92864cc961dfb7e0.png
https://i-blog.csdnimg.cn/direct/9bdab8fa8a4b4468b00f872ec5d391dd.png
4. 总结raid 0, 1, 5, 10, 01的工作原理。总结各自的利用率,冗余性,性能,至少几个硬盘实现。
工作原理:
1、RAID0 提高存储性能的原理是把连续的数据分散到多个磁盘上存取,这样,系统有数据请求就可以被多个磁盘并行的实行,每个磁盘实行属于它自己的那部分数据请求,这种数据上的并行操作可以充实利用总线的带宽,明显提高磁盘团体存取性能。磁盘利用率100%,读、写性能提升,无容错能力,最少需要1个磁盘实现。
2、RAID 1 的工作原理是把用户写入硬盘的数据百分之百的自动复制到别的一个硬盘上,从而实现存储双份的数据。磁盘利用率 50% ,读性能提升、写性能略有降落,有冗余能力,最少需要2个磁盘实现。
3、RAID5 不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成的RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分布存储于不同的磁盘上,当RAID5的一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息区恢复被损坏的数据。磁盘可用空间为(N-1)*min(S1,S2,...),读、写性能提升,有容错能力(答应最多1块磁盘损坏),最少需要3个磁盘实现。
4、RAID 10 也被称为RAID 1+0标准,现实是将RAID 1和RAID 0标准结合的产物,在连续地以位或字节为单位分割数据并且并行读/写多个磁盘的同时,为每一块磁盘作磁盘镜像进行冗余。磁盘可用空间为N*min(S1,S2,...)/2,读、写性能提升,有容错能力(每组镜像最多只能坏一块),最少需要4个磁盘实现。
5、RAID01又称为RAID0+1,先进行条带存放(RAID0),再进行镜像(RAID1)。RAID10又称为RAID1+0,先进行镜像(RAID1),再进行条带存放(RAID0)。
5. 总结LVM的根本原理,完成实行对LVM的创建和磁盘扩容。
LVM可以弹性的更改LVM的容量,通过互换PE来进行资料的转换,将原来LV内的PE转移到其他的装备中以降低LV的容量,或将其他装备中的PE加到LV中以加大容量。
实现过程:
1——将装备指定为物理卷。
2——用一个或者多个物理卷来创建一个卷组,物理卷是用固定大小的物理区域(Physical Extent,PE)来定义的。
3——在物理卷上创建的逻辑卷, 是由物理区域(PE)组成。
4——可以在逻辑卷上创建文件系统并挂载。
https://i-blog.csdnimg.cn/direct/20bcf6a6458c4674a782a91b4a5c7c1c.png
https://i-blog.csdnimg.cn/direct/d72885d2049c4377a86afd7901c4ef86.png
https://i-blog.csdnimg.cn/direct/29dd6a9c765b4c329e686af6524696c3.png https://i-blog.csdnimg.cn/direct/8e33928b23af41b1a601df40f3c0172b.png
6. 总结步调包管理器有哪些,以及包中包含什么内容的文件,尝试这些文件如何获取命令获取? yum/dnf/apt 总结步调包获取途径,以及rpm, yum, apt命令选项示例。
主流的步调包管理器有:
redhat:rpm文件, rpm 包管理器,rpm:Redhat Package Manager,RPM Package Manager。
debian:deb文件, dpkg 包管理器。
步调包文件组成 (每个包独有)
(1)包内的文件;
(2)元数据,如:包的名称,版本,依赖性,描述等;
(3)大概会有包安装或卸载时运行的脚本。
获取步调包的途径:
(1)系统发版的光盘或官方网站
CentOS镜像:
https://www.centos.org/download/
http://mirrors.aliyun.com
http://mirrors.sohu.com
http://mirrors.163.com
Ubuntu 镜像:
http://cdimage.ubuntu.com/releases/
http://releases.ubuntu.com
(2)第三方组织提供
Fedora-EPEL:Extra Packages for Enterprise Linux
https://fedoraproject.org/wiki/EPEL
https://mirrors.aliyun.com/epel/?spm=a2c6h.13651104.0.0.3bc47dfaZpesAr
Rpmforge:RHEL推荐,包很全,即将关闭
http://repoforge.org/
Community Enterprise Linux Repository:支持最新的内核和硬件相关包
http://www.elrepo.org
(3)软件项目官方站点
http://yum.mariadb.org/10.4/centos8-amd64/rpms/
http://repo.mysql.com/yum/mysql-8.0-community/el/8/x86_64/
(4)搜刮引擎
留意:第三方包发起要检查其合法性,泉源合法性,步调包的完备性
http://pkgs.org
http://rpmfifind.net
http://rpm.pbone.net
https://sourceforge.net/
(5)自己制作
将源码文件,利用工具,如:rpmbuild,fpm等工具制作成rpm包文件。
https://i-blog.csdnimg.cn/direct/1d0bf1bc44434991b264079fe0c8a51b.png
https://i-blog.csdnimg.cn/direct/da9c40f0b32842cca3fc0dfe72488955.png
https://i-blog.csdnimg.cn/direct/7ad13fb092e04bdaab162f70c7d416a1.png
https://i-blog.csdnimg.cn/direct/889b72f9192445198b15c0ede1f81583.png
https://i-blog.csdnimg.cn/direct/ce6423ed336d4da4aead81fe1ccd85e2.png
https://i-blog.csdnimg.cn/direct/fb3fef082eb44b8084a2ec131d3cd2ca.png
7. 扼要总结yum/dnf工作原理。并搭建私有yum仓库(base, epel源)给另一个虚拟机利用。
yum/dnf工作原理:
yum/dnf 是基于C/S 模式
yum 服务器存放rpm包和相关包的元数据库;
yum 客户端访问yum服务器进行安装或查询等。
yum 实现过程
先在yum服务器上创建 yum repository(仓库),在仓库中事先存储了众多rpm包,以及包的相关的元数据文件(放置于特定目次repodata下),当yum客户端利用yum/dnf工具进行安装包时,会自动下载repodata中的元数据,查询元数据是否存在相关的包及依赖关系,自动从仓库中找到相关包下载并安装。
https://i-blog.csdnimg.cn/direct/d02c97ea35d748a4b81d19de08fd647d.png https://i-blog.csdnimg.cn/direct/0e13de95ebea41b6bd676c2380573d55.png
https://i-blog.csdnimg.cn/direct/1bad5934deeb47da82b830c1edac8e45.png
https://i-blog.csdnimg.cn/direct/00232ee1002e46fc91aae59fff360f75.png
https://i-blog.csdnimg.cn/direct/cf66e21c37ae4b2483d77172c8a65652.png https://i-blog.csdnimg.cn/direct/39e871cdd98e4805be5a7acc71888477.png
8. 总结系统安装之后的常用初始化步调。rocky/ubuntu
写文章-CSDN创作中心https://csdnimg.cn/release/blog_editor_html/release2.3.7/ckeditor/plugins/CsdnLink/icons/icon-default.png?t=O83Ahttps://mp.csdn.net/mp_blog/creation/editor/142854911
9. 总结开放系统互联OSI模子,每层作用及对应的协议。
第7层:应用层(Application Layer)提供为应用软件而设的接口,以设置与另一应用软件之间的通信。例如: HTTP、HTTPS、FTP、TELNET、SSH、SMTP、POP3、MySQL等。
第6层:表示层(Presentation Layer)把数据转换为能与吸收者的系统格式兼容并适合传输的格式。
第5层:会话层(Session Layer)负责在数据传输中设置和维护电脑网络中两台电脑之间的通信连接。
第4层:传输层(Transport Layer)把传输表头(TH)加至数据以形成数据包。传输表头包含了所利用的协议等发送信息。例如:传输控制协议(TCP)等。
第3层:网络层(Network Layer)决定命据的路径选择和转寄,将网络表头(NH)加至数据包,以形成报文。 网络表头包含了网络数据。例如:互联网协议(IP)等。
第2层:数据链路层(Data Link Layer)负责网络寻址、错误侦测和改错。当表头和表尾被加至数据包时,会形成信息框(Data Frame)。数据链表头(DLH)是包含了物理地点和错误侦测及改错的方法。数据链表尾(DLT)是一串指示数据包末了的字符串。例如以太网、无线局域网(Wi-Fi)和通用分组无线服务(GPRS)等。分为两个子层:逻辑链路控制(logical link control,LLC)子层和介质访问控(Mediaaccess control,MAC)子层。
第1层:物理层(Physical Layer)在局部局域网上传送数据帧(Data Frame),它负责管理电脑通信装备和网络媒体之间的互通。包罗了针脚、电压、线缆规范、集线器、中继器、主机接口卡等。
物理层和数据链路层对应以太网协议,网络层对应互联网协议(IP),传输层对应传输控制协议(TCP)。
10. 调整动态端口范围为20000-60000
1、https://i-blog.csdnimg.cn/direct/265d1cc6bf8a4e9198a735d3ecd33c87.png
11. 总结TCP包头结构,TCP三次握手,4次挥手。
TPC包头结构:
(1)源端口、目的端口:盘算机上的进程要和其他进程通信是要通过盘算机端口的,而一个盘算机端口某个时候只能被一个进程占用,以是通过指定源端口和目的端口,就可以知道是哪两个进程需要通信。源端口、目的端口是用16位表示的,可推算盘算机的端口个数为2^16个,即65536; (2)序列号:表示本报文段所发送数据的第一个字节的编号。在TCP连接中所传送的字节省的每一个字节都会按顺序编号。由于序列号由32位表示,以是每2^32个字节,就会出现序列号回绕,再次从 0开始; (3)确认号:表示吸收方期望收到发送方下一个报文段的第一个字节数据的编号。也就是告诉发送方:我盼望你(指发送方)下次发送的数据的第一个字节数据的编号为此确认号; (4)数据偏移:表示TCP报文段的首部长度,共4位,由于TCP首部包含一个长度可变的选项部分,需要指定这个TCP报文段到底有多长。它指出 TCP 报文段的数据起始处距离 TCP 报文段的起始处有多远。该字段的单位是32位(即4个字节为盘算单位),4位二进制最大表示15,以是数据偏移也就是TCP首部最大60字节; (5)URG:表示本报文段中发送的数据是否包含告急数据。背面的告急指针字段(urgent pointer)只有当URG=1时才有效; (6)ACK:表示是否前面确认号字段是否有效。只有当ACK=1时,前面的确认号字段才有效。TCP规定,连接建立后,ACK必须为1,带ACK标记的TCP报文段称为确认报文段; (7)PSH:提示吸收端应用步调应该立即从TCP吸收缓冲区中读走数据,为吸收后续数据腾出空间。如果为1,则表示对方应当立即把数据提交给上层应用,而不是缓存起来,如果应用步调不将吸收到的数据读走,就会不停停留在TCP吸收缓冲区中; (8)RST:如果收到一个RST=1的报文,说明与主机的连接出现了严重错误(如主机瓦解),必须释放连接,然后再重新建立连接。或者说明前次发送给主机的数据有问题,主机拒绝相应,带RST标记的TCP报文段称为复位报文段; (9)SYN:在建立连接时利用,用来同步序号。当SYN=1,ACK=0时,表示这是一个请求建立连接的报文段;当SYN=1,ACK=1时,表示对方同意建立连接。SYN=1,说明这是一个请求建立连接或同意建立连接的报文。只有在前两次握手中SYN才置为1,带SYN标记的TCP报文段称为同步报文段; (10)FIN:表示通知对方本端要关闭连接了,标记数据是否发送完毕。如果FIN=1,即告诉对方:“我的 数据已经发送完毕,你可以释放连接了”,带FIN标记的TCP报文段称为结束报文段; (11)窗口大小:表示如今答应对方发送的数据量,也就是告诉对方,从本报文段的确认号开始答应对方发送的数据量,达到此值,需要ACK确认后才能再继续传送背面数据,由Window size value *Window size scaling factor(此值在三次握手阶段TCP选项Window scale协商得到)得出此值。 (12)校验和:提供额外的可靠性。 (13)告急指针:标记告急数据在数据字段中的位置。 (14)选项部分:其最大长度可根据TCP首部长度进行推算。TCP首部长度用4位表示,选项部分最长为:(2^4-1)*4-20=40字节。 https://i-blog.csdnimg.cn/direct/00a668b7a42b410aaa9f405e0c0e938e.pnghttps://i-blog.csdnimg.cn/direct/414e713370b5412abde9544f1e8a1ea1.png
12. 总结主机到主机的包传递过程。
1、主机A在本机的路由表中查询匹配主机B的IP的网络号;
2、如果能够查询到,说明主机B和主机A在同一网段(通常是在同一局域网内),则下一跳即为主机B。主机A在ARP缓存中查找主机B的MAC地点(如没有则先发送ARP广播),然后将数据包封装成帧发送至通信线路上。该帧的源MAC是主机A的MAC地点,目的MAC是主机B的MAC地点。
[*] 如果主机A和主机B是网线直连的,那么主机B直吸收到主机A发来的帧。
[*] 如果主机A和B是通过互换机相连的,互换机的某个端口收到主机A发来的帧,然后根据帧中的目的MAC地点在MAC地点表中查询对应的转发端口。如果找到了,直接从该端口转发出去;如果没找到,则在除了吸收到数据包以外的所有端口进行转发(广播)。
[*] 如果主机A和B是通过路由器相连的,路由器的某个端口收到主机A发来的帧,厥后的处理流程见步调4。
3、如果不能查询到,说明主机A和主机B不处于同一网络中,需要通过网关来进行跨网络的通信。主机A会通过默认网关(通常是路由器)来提交报文,即下一跳是路由器。主机A根据网关的IP在自己的ARP缓存中查找对应的MAC地点(如没有则先发送ARP广播),然后将数据包封装成帧发送至通信线路上。该帧的源MAC是主机A的MAC,目的MAC是路由器的MAC。
4、当网关路由器吸收到数据帧时,首先提取包头中的目的MAC地点,在MAC表进行查询。如果找到对应项,则按对应的端口进行转发(这一步实现了与互换机一样的功能);如果没找到对应项,则提取数据包包头中的目的IP。
[*] 如果目的IP是自己(这是大概的,比如ping路由器),则交由上层处理。
[*] 如果目的IP不是自己,则需要进行转发,在路由表中查询目的IP的转发端口和下一跳IP。若找到了对应的路由表项,则按照路由表项转发;若没找到对应的路由表项,则按照缺省路由进行转发。转发时,源和目的IP地点不变,源MAC地点改为转发端口的MAC地点,目的MAC地点改为下一跳IP的MAC地点。
13. 总结IP地点 A, B, C, D 类,并剖析IP地点的组成
IP地点分类详细先容:
数字0和127不作为A类地点,由于数字127保留给内部回送函数,而数字0则表示该地点是本地宿主机,不能传送。B类地点的第一组数字为128~191。C类地点的第一组数字为192~223。
1、A类IP地点
一个A类IP地点由1字节的网络地点和3字节主机地点组成,它主要为大型网络而设计的,网络地点的最高位必须是“0”, 地点范围从1.0.0.0 到127.0.0.0)。可用的A类网络有127个,每个网络能容纳16777214个主机。此中127.0.0.1是一个特殊的IP地点,表示主机本身,用于本地机器的测试,A类地点分配给规模特殊大的网络利用。A类网络用第一组数字表示网络本身的地点,背面三组数字作为连接于网络上的主机的地点。分配给具有大量主机(直接个人用户)而局域网络个数较少的大型网络。例如IBM公司的网络。
注:
A:0-127,数字0和127不作为A类地点,由于数字127保留给内部回送函数,为回环测试地点,而数字0则表示该地点是本地宿主机,不能传送。127为回环测试地点,因此,A类ip地点的现实范围是1-126.
默认子网掩码为255.0.0.0
2、B类IP地点
一个B类IP地点由2个字节的网络地点和2个字节的主机地点组成,网络地点的最高位必须是“10”,地点范围从128.0.0.0到191.255.255.255。可用的B类网络有16382个,每个网络能容纳6万多个主机 。
注:
B:128-191,此中128.0.0.0和191.255.0.0为保留ip,现实范围是128.1.0.0--191.254.0.0。
3、C类IP地点
一个C类IP地点由3字节的网络地点和1字节的主机地点组成,网络地点的最高位必须是“110”。范围从192.0.0.0到223.255.255.255。C类网络可达209万余个,每个网络能容纳254个主机,C类地点分配给小型网络,如一般的局域网和校园网,它可连接的主机数目是最少的,采用把所属的用户分为多少的网段进行管理。
注:C:192-223,此中192.0.0.0和223.255.255.0为保留ip,现实范围是192.0.1.0--223.255.254.0
4、D类地点
用于多点广播(Multicast)。 D类IP地点第一个字节以“lll0”开始,它是一个专门保留的地点。它并不指向特定的网络,目前这一类地点被用在多点广播(Multicast)中。多点广播地点用来一次寻址一组盘算机,它标识共享同一协议的一组盘算机。224.0.0.0到239.255.255.255用于多点广播 。用途比较特殊,D类地点称为广播地点,供特殊协议向选定的节点发送信息时用。
5、E类IP地点
以“llll0”开始,为将来利用保留。240.0.0.0到255.255.255.254,255.255.255.255用于广播地点。E类地点保留给将来利用。
全零(“0.0.0.0”)地点对应于当前主机。全“1”的IP地点(“255.255.255.255”)是当前子网的广播地点。
IP地点的组成:
1、 IPv4地点的组成
IPv4地点由32个比特(Bit)组成,通常表示为四个8位(Byte)的十进制数,每个数之间用点号(.)分隔,例如:192.168.0.1。
IPv4地点的32个比特被分为两部分,前面的网络地点(Network Address)部分和背面的主机地点(Host Address)部分。网络地点部分表示网络的标识,主机地点部分表示在该网络中的主机标识。
2、 IPv6地点的组成
IPv6地点由128个比特(Bit)组成,通常表示为八组16位的十六进制数,每组数之间用冒号(:)分隔,例如:2001:0db8:85a3:0000:0000:8a2e:0370:7334。
IPv6地点的128个比特被分为两部分,前面的网络前缀(Network Prefix)部分和背面的接口标识(Interface Identifier)部分。网络前缀部分表示网络的标识,接口标识部分表示主机在该网络中的唯一标识。
3 、子网掩码的作用与组成
子网掩码(Subnet Mask)用于划分网络地点和主机地点。它与IP地点进行逻辑与操作,将网络地点部分全部置为1,主机地点部分全部置为0,用于区分网络地点和主机地点。
IPv4的子网掩码通常表示为四个8位的十进制数,与IPv4地点对应的每个字节进行逻辑与操作。例如,子网掩码255.255.255.0表示前三个字节为网络地点,最后一个字节为主机地点。
IPv6的子网掩码通常表示为八组16位的十六进制数,与IPv6地点对应的每组数进行逻辑与操作。例如,子网掩码ffff:ffff:ffff:ffff::表示前四组为网络前缀,后四组为接口标识。
14. 201.222.200.111/18盘算主机数?子网掩码?说明盘算方法。
主机数:2^(32-18)-2=16382 32-18 表示32位减去18位网络ID,剩下主机位ID数
201.222.200.111/18子网掩码二进制为:11111111 . 11111111 . 11 000000 . 00000000
转换为十进制为255.255.192.0。
15. 当A(10.0.1.1/16)与B(10.0.2.2/24)通信,A如何判断是否在同一个网段?A和B能否通信?
10.0.1.1/16 ----> 10.0.2.2/24时
10.0.1.1/16 = 10.0.1.1/255.255.0.0
00001010 . 00000000 . 00000001 . 00000001 IP
11111111 . 11111111 . 00000000 . 00000000 netmask
00001010.00000000.00000000.00000000 网络ID 10.0.0.0
此处也要和前面的netmask与运算,而不是自己的
10.0.2.2/16 = 10.0.2.2/255.255.0.0
00001010 . 00000000 . 00000010 . 00000010 IP
11111111 . 11111111 . 00000000 . 00000000 netmask
00001010.00000000.00000000.00000000 网络ID 10.0.0.0
结论:10.0.0.0 = 10.0.0.0,以是两者在同一个网段。
A和B可以通信。
16. 如何将10.0.0.0/8划分32个子网?求每个子网的掩码,主机数。
10.0.0.0/8
主机数 2^(32-8)-2=16777214
10.0.0.1 -- 10.255.255.254
划分成32个子网 2^5=32,以是借5位
10.00000 000.00000000.00000000 10.0.0.0/13
......
10.11111 000.00000000.00000000 10.248.0.0/13
子网掩码netmask:11111111.11111 000.00000000.00000000即255.238.0.0
每个子网的主机数:2^(24-5)-2=524286
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]