IP解析
IP地址组成:IP地址由4部分数字组成,每部分数字对应于8位二进制数字,各部分之间用小数点分开,这是点分2进制。如果换算为10进制我们称为点分10进制。
每个ip地址由两部分组成网络地址(NetID)和主机地址(HostID).网络地址表示其属于互联网中的哪一个网络,而主机地址则表示其属于该网络中的哪一台主机.
网络部分(网络位):直接决定了可以分配的网络数 计算方法:2^网络号位数-2
主机部分(主机位):则决定了网络中最大的主机数 计算方法:2^主机号位数-2
网络地址:用来表示一个网络,主机位取值全部为0,例如:192.168.1.0 /24
广播地址:用于在一个网络内一对所有的通信,主机部分全部换成1。
子网掩码:用于区分IP地址中的网络地址和主机地址
网络号位数 | 子网掩码 | 地质类型 |
8 | 255.0.0.0 | A类地址 |
16 | 255.255.0.0 | B类地址 |
24 | 255.255.255.0 | C类地址 |
32 | 255.255.255.255 | D类地址 |
例如:A类地址的网络位是点分二进制形态下的IP地址的前8位......
ip地址的划分
A类:0.0.0.0 - 127.255.255.255/8 255.0.0.0
其中0.0.0.0表示所有的IP地址,127.0.0.1通常被称为本地回环地址,所以0.0.0.0网段和127.0.0.0网段不能使用
127.0.0.1用于测试环回用的。回环:一台电脑上两个应用程序通过网络通信。
B类:128.0.0.0 - 191.255.255.255/16 255.255.0.0
C类:192.0.0.0 - 223.255.255.255/24 255.255.255.0
D类:
范围从224-239,D类IP地址第一个字节以“1110”开始,它是一个专门保留的地址。它并不指向特定的网络,目前这一类地址被用在多点广播(Multicast)中。多点广播地址用来一次寻址一组计算机,它标识共享同一协议的一组计算机。224.0.0.0-239.255.255.255 组播地址
E类:
范围从240-254,以“11110”开始,为将来使用保留。 全“1”的IP地址(“255.255.255.255”)是当前子网的广播地 。240.0.0.0-255.255.255.254 保留地址
vlsm子网划分
用来解决IP地址不足的问题,网络号位数不是常规的8,16,24,32,网络号向主机号借位,出现9,25,26等数字
实例:
IP地址:10.9.24.25/25 该地址的网络位为二进制下的前25位
二进制IP地址:00001010.00001001.00011000.0 0011001
网络位:00001010.00001001.00011000.0
主机位:0011001
网络地址:00001010.00001001.00011000.0 0000000
转化为二进制IP:10.9.24.0/25
广播地址:00001010.00001001.00011000.0 1111111
转化为二进制IP:10.9.24.127/25
该网段的主机位为后7位,所以该网段所能容纳的主机数为2^7-2=126
实例:
将10.9.25.0/24网段
划分为两个子网:/25
00001010.00001001.00011000.0 0000000
转化为二进制:10.9.25.0/25
00001010.00001001.00011000.1 0000000
转化为二进制:10.9.25.128/25
划分为四个子网:/26
00001010.00001001.00011000.00 000000
转化为二进制:10.9.25.0/26
00001010.00001001.00011000.01 000000
转化为二进制:10.9.25.64/26
00001010.00001001.00011000.10 000000
转化为二进制:10.9.25.128/26
00001010.00001001.00011000.11 000000
转化为二进制:10.9.25.192/26
实例:
现在给你10.0.0.0/24网段,公司有四个部门,每个部门分别有100,60,30,18人,需要给每个部门划分一个子网
A部门100人,那么2^n-2>=100,此时n=7,2^7-2=126>=100最符合需求
所以网络位为25,主机位为7,网络位借主机位1位
有2种情况:0 1
选用0:00001010.00000000.00000000.0 0000000
网络地址 :10.0.0.0/25
广播地址 :10.0.0.127/25
B部门60人,那么2^n-2 >=60;假设主机位为n=6,2^6-2=62>=60最符合要求
所以网络位为26,主机位为6,网络位借主机位2位
有4种情况:00 01 10 11
00和01被A占用,在10和11中选用10:
100001010.00000000.00000000.10 000000
网络地址:10.0.0.128/26
广播地址:10.0.0.191/26
C部门30人,那么2^n-2 >=30;假设主机位为n=5,2^5-2=30>=30最符合要求
所以网络位为27,主机位为5,网络位借主机位3位
有8种情况:000 001 010 011 110 101 111 100
0开头的被A占用,10开头的被B占用,在110和111中选用110:
100001010.00000000.00000000.110 00000
网络地址:10.0.0.192/27
广播地址:10.0.0.223/27
D部门18人,但可以将剩余的111开头的IP地址全分配给D
100001010.00000000.00000000.111 00000
网络地址:10.0.0.224/27
广播地址:10.0.0.255/27
总结:A部门:10.0.0.0/25 B部门:10.0.0.128/26 C部门:10.0.0.192/27 D部门:10.0.0.224/27
Linux网络管理
查看IP地址
ip address = ip a
lo和ens33为网卡名称
link/ether为MAC地址
inet为IP地址/掩码
brd(broadcast)为该网段的广播地址
查看指定网卡的信息:ip a show 网卡名 =ip a s网卡名
给网卡临时增加ip地址:ip a a dev 网卡名 新增ip = ip address add dev
给网卡临时删除ip地址:ip a d dev 网卡名 需删除的ip = id address delete dev
临时增加和删除再重启网络systemctl restart network之后失效恢复原样
ifconfig(需要先安装net-tools)
netmask为子网掩码
RX为接受
TX为发送
查看某个网卡的信息:ifconfig 网卡名
临时修改网卡原有的ip地址: ifconfig 网卡名 修改的ip地址
给网卡临时增加ip地址:ifconfig 网卡名:序号 增加的ip地址
同一个ip地址只能被一个终端使用,两个终端同时使用一个ip地址会造成ip冲突,造成其中一台或者两个终端都不能使用
永久修改ip
网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-网卡名
vim /etc/sysconfig/network-scripts/ifcfg-网卡名
只留下五行
TYPE 网络类型
BOOTPROTO IP地址获取类型 (dhcp动态获取ip,static静态ip)
获取类型改为静态(static)之后需要手动配置:
IPADDR=ip地址
NETMASK=子网掩码
GATEWAY=网关
网关和ip地址属于同一个网段,如果采用nat模式,网关为2;如果采用桥接模式,网关为1
DNS1=8.8.8.8
DNS2=114.114.114.114
NAME 网卡名字
DEVICE 设备名
ONBOOT 是否开启网卡,若systemctl start network后仍然没有ip,检查该项参数
修改后需要重启网络systemctl restart network ,使配置生效
Linux路由
路由分类:
直连路由
静态路由
动态路由:路由协议自动获取路由信息
查看路由:
ip r
route
添加路由:ip r a 目的网段 via 出口网关 dev 出口网卡名
开启路由转发功能:
永久开启:
编辑配置文件:vim /etc/sysctl.conf
添加一行参数:net.ipv4.ip_forward = 1,保存退出
sysctl -p 使其生效
关闭路由转发需要将1改为0,或者直接删除参数
获取MAC地址
获取同一局域网其他主机的MAC地址:arping -I 本机网卡名 对方IP地址
查询arp表中的MAC地址:arp -a