配置网卡信息

获取网卡的信息

dmesg | grep -i eth

获取网卡芯片信息

lspci | grep -i eth


查询IP信息

ifconfig显示IP信息

   -a:显示包括未激活状态的网卡信息


重启网卡服务(每次配置完ip需要手动重启此服务)

CentOS6: servcie network restart

CentOS7: systemctl restart network


禁止其他人PING到自己,0是关闭,1是开启


忽略ping广播地址,0是关闭,1是开启,开始以后其他相应到的IP就会通(需要两边都打开)

arp、ip neigh 命令查看arp表信息


Linux网络配置文件存放路径

/etc/sysconfig/network-scripts/ifcfg-INT



网卡配置文件的常用参数说明


DEVICE:此配置文件所关联到的设备,其值通常应该ifcfg-IFNAME中的IFNAME

BOOTPROTO:启动此设备时使用的配置协议:取值有static(手动配置)、none(手动配置)、dhcp或          bootp(动态配置);

HWADDR:网卡的MAC地址,此地址应该与网卡设备ROM中固定的地址保持一致

MACADDR:修改到指定MAC地址

NM_CONTROLLED:NM即NetworkManager的简写,建议设定为no

ONBOOT:此设备是否随OS启动而激活

TYPE:设备类型,通常有“Ethernet”,“Bridge”

UUID:网卡设备的唯一识别码

IPADDR:此接口的IP地址

NETMASK:子网掩码,EX 255.255.255.0

PREFIX:CIDR格式的子网掩码,EX 24位掩码(这个跟NETMASK有其中一个即可,这)

GATEWAY:网关

DNS1:DNS服务器指向的主DNS服务器

DNS2:备用DNS服务器地址

DNS3:第三备用DNS服务器地址

IPV6INIT:初始化ipv6协议地址

USERCTL:是否允许普通用户管理此接口

PEERDNS:当BOOTPROTO的值为dhcp时,是否允许dhcp服务器提供的dns服务器通提供的DNS服务指向覆盖本地手动配置的DNS服务器指向;


示例:网卡配置信息

查看ip地址信息

/etc/sysconfig/network-scripts/目录下面的网卡配置文件

此处的NAME必须跟网卡配置文件里面DEVICE的NAME的值一致,否则报错

网卡配置一览


CentOS6虚拟网卡实现一个网卡多个地址

1.建立子接口的文件的配置文件

2.注意里面子接口的DEVICE的NAME里面需要加上:NUM(冒号数字),如下图

3.ifconfig查看ip信息可以发现到eth0:2的网卡

4.重启网络服务并且测试


多网卡bonding实现

什么是bonding?

就是将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。当然,直接给两块网卡设置同一IP地址是不可能的。通过bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址。


Bonding的工作模式

Mode 0 (balance-rr)

轮转(Round-robin)策略:从头到尾顺序的在每一个slave接口上面发送数据包。本模式提供负载均衡和容错的能力

Mode 1 (active-backup)

活动-备份(主备)策略:在绑定中,只有一个slave被激活。当且仅当活动的slave接口失败时才会激活其他slave。为了避免交换机发生混乱此时绑定的MAC地址只有一个外部端口上可见

Mode 3 (broadcast)

广播策略:在所有的slave接口上传送所有的报文。本模式提供容错能力。


Bonding配置

创建bonding设备的配置文件

/etc/sysconfig/network-scripts/ifcfg-bond0

DEVICE=bond0

BOOTPROTO=none

BONDING_OPTS=“miimon=100 mode=0”


/etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

BOOTPROTO=none

MASTER=bond0

SLAVE=yes

USERCTL=no


miimon是用来进行链路监测的。如果miimon=100,那么系统每100ms 监测一次链路连接状态,如果有一条线路不通就转入另一条线路

查看bond0状态:/proc/net/bonding/bond

关于bonding的详细配置请参照

/usr/share/doc/kernel-doc-version/Documentation/networking/bonding.txt


实战:创建bonding mode1模式实现接口备份

注意:此实验前不能有一卡多地址的情况。

1.配置网卡的配置文件

2.配置完毕以后,重启网卡服务

3.此处可以发现配置完bonding接口的MAC地址是一样的

4.查看bonding接口的状态,发现已经起来了,正常情况下来说此处实验已经完成,但是!

5.再做ping测试,居然不通!此时应该关闭掉NetworkManager服务或者重启一下此服务,此服务是用于自动识别网口的状态,但是此服务在此处并不好使。如果关闭掉都不行的话,那就只能重启电脑试试了。不过此处也许只是虚拟机的问题,在真实机器上面还没测试过。

6.测试bonding接口

首先我们可以看见网络状态是两个网卡都是连通的

现在把现在工作中的eth0网卡断掉,可以发现网络依然是通的

查看一下系统里面的网卡状态,现在工作的是eth1,另外一个eth0网卡则是down的状态

把eth0重新链接回去,然后再把eth1接口断开,网络还是通的~虽然中间丢了一个包

查看一下bonding的状态,此时工作是eth0,另外一个eth1则是down的状态,此处实验完毕。




IP地址

它们可唯一标识IP 网络中的每台设备

每台主机(计算机、网络设备、外围设备)必须具有唯一的地址

IP地址由两部分组成:

网络ID:

  标识网络

    每个网段分配一个网络ID

  主机ID:

    标识单个主机

    由组织分配给各设备


IPv4地址格式:点分十进制记法

IP 地址分类


A类:

0 000 0000 -0 111 1111: 1-127

网络数:126, 127

每个网络中的主机数:2^24-2

默认子网掩码:255.0.0.0

私网地址:10.0.0.0

B类:

10 00 0000 -10 11 1111:128-191

网络数:2^14

每个网络中的主机数:2^16-2

默认子网掩码:255.255.0.0

私网地址:172.16.0.0-172.31.0.0

C类:

110 0 0000 -110 1 1111: 192-223

网络数:2^21

每个网络中的主机数:2^8-2

默认子网掩码:255.255.255.0

私网地址:192.168.0.0-192.168.255.0

D类:组播地址

1110 0000 -1110 1111: 224-239

E类:保留实验用

240-255


公共IP 地址

A类地址:

1.0.0.0-9.255.255.255

11.0.0.0-126.255.255.255


B类地址

128.0.0.0-172.15.255.255

172.32.0.0-191.255.255.255


C类地址

192.0.0.0-192.167.255.255

192.169.0.0-223.255.255.255


私有IP地址

A类地址:10.0.0.0-10.255.255.255/8

B类地址:172.16.0.0-172.31.255.255/12

C类地址:192.168.0.0-192.168.255.255/16


特殊地址

0.0.0.0

0.0.0.0不是一个真正意义上的IP地址。它表示一个集合:所有不清楚的主机和目的网络。

255.255.255.255

限制广播地址。对本机来说,这个地址指本网段内(同一广播域)的所有主机

127.0.0.1~127.255.255.254

本机回环地址,主要用于测试。在传输介质上永远不应该出现目的地址为“127.0.0.1”的数据包。

224.0.0.0到239.255.255.255

组播地址,224.0.0.1特指所有主机,224.0.0.2特指所有路由器。224.0.0.5指OSPF 路由器,地址多用于一些特定的程序以及多媒体程序

169.254.x.x

如果Windows主机使用了DHCP自动分配IP地址,而又无法从DHCP服务器获取地址,系统会为主机分配这样地址。


保留地址

网络地址:32位

00000000 00000000 00000000 00000000

广播地址:

11111111 11111111 11111111 11111111


子网划分示例:

1、某公司申请到一个C 类IP 地址,但要连接6 个的子公司,最大的一个子 

公司有26 台计算机,每个子公司在一个网段中,则子网掩码应设为? 

答:假设C网地址为192.168.0.0/24,6个子公司,即划分8个子网,两个不用,每个子网能容纳30个IP

192.168.0.0-192.168.0.31/27-255.255.255.224

192.168.0.32-192.168.0.63/27-255.255.255.224

192.168.0.64-192.168.0.95/27-255.255.255.224

192.168.0.96-192.168.0.127/27-255.255.255.224

192.168.0.128-192.168.0.159/27-255.255.255.224

192.168.0.160-192.168.0.191/27-255.255.255.224


2、一家集团公司有12家子公司,每家子公司又有4个部门。上级给出一个172.16.0.0/16的网段,让给每家子公司以及子公司的部门分配网段。

答:首先把172.16.0.0/16分开16个网段,其中4个网段留着备用,这样就有12个网段分配给12个公司,

然后每个公司再从这些网段里面再划分4个网段给每个部门


第一个子网:172.16.0.0-172.16.15.0/20

    部门A:172.16.0.0-172.16.3.0/22

    部门B:172.16.4.0-172.16.7.0/22

    部门C:172.16.8.0-172.16.3.11/22

    部门D:172.16.12.0-172.16.3.15/22

    下面的子网划分4个子网如此类推。

第二个子网:172.16.16.0-172.16.31.0/20

第三个子网:172.16.32.0-172.16.47.0/20

第四个子网:172.16.48.0-172.16.63.0/20

第五个子网:172.16.64.0-172.16.79.0/20

第六个子网:172.16.80.0-172.16.95.0/20

第七个子网:172.16.96.0-172.16.111.0/20

第八个子网:172.16.112.0-172.16.127.0/20

第九个子网:172.16.128.0-172.16.143.0/20

第十个子网:172.16.144.0-172.16.159.0/20

第十一个子网:172.16.160.0-172.16.175.0/20

第十二个子网:172.16.176.0-172.16.191.0/20


3、某集团公司给下属子公司甲分配了一段IP地址192.168.5.0/24,现在甲公司有两层办公楼(1楼和2楼),统一从1楼的路由器上公网。1楼有100台电脑联网,2楼有53台电脑联网。如果你是该公司的网管,你该怎么去规划这个IP?


192.168.5.1-192.168.5.126/25

192.168.5.128-192.168.5.254/25


route命令的使用

路由管理命令

查看:route -n

添加:route add

route add [-net|-host] target [netmask Nm] [gwGw] [[dev] If]

目标:192.168.1.3 网关:172.16.0.1

#route add -host 192.168.1.3 gw172.16.0.1 dev eth0

目标:192.168.0.0 网关:172.16.0.1

route add -net 192.168.0.0 netmask 255.255.255.0 gw172.16.0.1 dev eth0

route add -net 192.168.0.0/24 gw172.16.0.1 dev eth0

默认路由,网关:172.16.0.1

route add -net 0.0.0.0 netmask 0.0.0.0 gw172.16.0.1

route add default gw172.16.0.1

删除:route del

route del [-net|-host] target [gwGw] [netmask Nm] [[dev] If]

目标:192.168.1.3 网关:172.16.0.1

route del -host 192.168.1.3

目标:192.168.0.0 网关:172.16.0.1

route del -net 192.168.0.0 netmask 255.255.255.0


路由实验

如下图,实现192.168.0.0/24的网段和172.16.0.0/16的网段互通

首先查看R1的默认路由和IP

在R1上面添加172.16.0.0/16的路由

查看R2的默认路由和IP

在R2上面添加192.168.0.0/24的路由

因为Linux系统默认ip_forward功能是关闭的,需要开启

把所有的防火墙都先关闭掉,以免影响实验

测试PC1连通性以及路由走向是否正确

测试PC2连通性以及路由走向是否正确

实验完毕,删除路由,并且关闭ip_forward功能