linux系统运维基础9

1、总结ip分类以及每个分类可以分配的IP数量

网络中的每一个主机或路由器至少有一个ip地址;

在Internet中不允许有两个设备具有同样的IP地址;

IP地址采用分层结构;

IP地址是由网络号(net ID)与主机号(host ID)两部分组成的。

IP地址长度为32位,点分十进制(dotted decimal)地址;

采用x.x.x.x的格式来表示,每个x为8位,每个x的值为0~255(例如 202.113.29.16);

根据不同的取值范围,IP地址可以分为五类;

IP地址中的前5位用于标识IP地址的类别:

A类地址的第一位为0;

B类地址的前两位为10;

C类地址的前三位为110;

D类地址的前四位为1110;

E类地址的前五位为11110。

IP地址根据网络号和主机号来分,分为A、B、C三类及特殊地址D、E。全0和全1的都保留不用。

A类:

(1.0.0.0-126.0.0.0)

第一个字节为网络号,后三个字节为主机号。该类IP地址的最前面为“0”,所以地址的网络号取值于1~126之间。一般用于大型网络。

定义:第1字节为网络地址,其它3个字节为主机地址

范围:1.0.0.1-126.255.255.254

数量:允许有126个网段,每个网段允许有16777214台主机

子网掩码:255.0.0.0

私有地址:10.X.X.X是私有地址(所谓的私有地址就是在互联网上不使用,而被用在局域网络中的地址),范围10.0.0.1-10.255.255.254

保留地址:127.X.X.X是保留地址,也是本机地址,等效于localhost或本机IP。一般用于测试使用。例如:ping 127.0.0.1来测试本机TCP/IP是否正常。

B类(128.0.0.0-191.255.0.0)

前两个字节为网络号,后两个字节为主机号。该类IP地址的最前面为“10”,所以地址的网络号取值于128~191之间。一般用于中等规模网络。

定义:第1字节和第2字节为网络地址,其它2个字节为主机地址

范围:128.0.0.1-191.255.255.254

数量:允许有16384个网段,每个网段允许有65534台主机

子网掩码:255.255.0.0

私有地址:172.16.0.0 - 172.31.255.255是私有地址

保留地址:169.254.X.X是保留地址。如果IP地址是自动获取IP地址,而你在网络上又没有找到可用的DHCP服务器。就会得到其中一个IP

C类

(192.0.0.0-223.255.255.0)

前三个字节为网络号,最后一个字节为主机号。该类IP地址的最前面为“110”,所以地址的网络号取值于192~223之间。一般用于小型网络。

定义:第1字节、第2字节和第3个字节为网络地址,第4个个字节为主机地址。另外第1个字节的前三位固定为110

范围:192.0.0.1 - 223.255.255.254

数量:允许有2097152个网段,每个网段允许有254台主机

子网掩码:255.255.255.0

私有地址:192.168.X.X是私有地址。(192.168.0.0 - 192.168.255.255)

D类:

是多播地址。该类IP地址的最前面为“1110”,所以地址的网络号取值于224~239之间。一般用于多路广播用户。

定义:不分网络地址和主机地址,它的第1个字节的前四位固定为1110

范围:224.0.0.1 - 239.255.255.254

E类:

是保留地址。该类IP地址的最前面为“1111”,所以地址的网络号取值于240~255之间。

定义:不分网络地址和主机地址,它的第1个字节的前五位固定为11110

范围:240.0.0.1 - 255.255.255.254

CIDR:无类域间路由

由于早期的IP地址的划分会浪费太多的IP地址,所以,现在都是用CIDR表示法,为此引入了子网掩码的概念,即网络位的个数可以任意指定。该方法兼容早期的IP划分方法。

CIDR表示方法:IP地址/网络ID的位数(网段的划分更加灵活)

子网掩码:子网掩码的作用,就是将某个IP地址划分成网络地址和主机地址两部分。

子网掩码是一个32位地址,用于屏蔽IP地址的一部分,并说明该IP地址是在局域网上,还是在远程网上,具体方法待会儿再讲。子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码的二进制格式中的网络位全为1。这样二进制格式的子网掩码和二进制的IP地址进行“与”运算,可以得出该IP地址的网络位。

允许的子网掩码的值:

10000000-128;

11000000-192;

11100000-224;

11110000-240;

11111000-248;

11111100-252;

11111110-254;

11111111-255;

最小IP:主机ID不能全为0,全为0表示网络ID

最大IP:主机ID不能全为1,全为1表示本地广播

CIDR技术用子网掩码中连续的1部份表示网络ID,连续的0部份表示主机ID。

比如,网络中包含2000台计算机,只需要用11位表示 主机ID,用21位表网络ID,则子网掩码表示为11111111.11111111.11111000.00000000,转换为十进制则为 255.255.248.0。

此时,该网络将包含2046台计算机,既不会造成IP地址的浪费,也不会利用路由器连接网络,增加额外的管理维护量.

计算会用到的公式:

1、主机数=2^主机ID位-2

2、网络数=2^可变的网络ID位

3、网络ID=IP和netmask 相与

4、划分子网数=2^网络ID向主机ID借的位数

5、划分子网损失IP数=2*(划分子网数-1)

(因为每段子网中的第一个IP地址用来表示网络位,而最后一个IP地址都被用来表示本网段中的广播。)


2、总结IP配置方法

ip配置

一, 使用ifconfig命令

ifconfig命令:查看与配置网络状态命令

**多IP设置 

临时来设置eth0网卡的ip地址和子网掩码

ifconfig eth0 192.168.233.189 netmask  255.255.255.0

ifconfig eth0:1 192.168.233.233 netmask  255.255.255.0**

**多IP设置 

临时来设置eth0网卡的ip地址和子网掩码

ifconfig eth0 192.168.233.189 netmask  255.255.255.0

ifconfig eth0:1 192.168.233.233 netmask  255.255.255.0**

二.setup工具

永久配置IP地址(红帽专用),这种方式虽然简单,但是不建议使用这种方式。

setup工具的安装和配置

1、安装setuptool

#yum install setuptool

2、安装防火墙设置

yum install system-config-securitylevel-tui

3、安装网络设置

#yum install system-config-network-tui

4、安装系统服务管理

#yum install ntsysv

安装完成之后,

运行 setup命令,然后就可以进入setup操作界面了

1.输入setup命令

2.选择网络服务

3.进行设备配置

4.进行相关参数配置

5.保存后

执行 service network restart

命令重启网络服务

1、安装setuptool

#yum install setuptool

2、安装防火墙设置

yum install system-config-securitylevel-tui

3、安装网络设置

#yum install system-config-network-tui

4、安装系统服务管理

#yum install ntsysv

安装完成之后,

运行 setup命令,然后就可以进入setup操作界面了

1.输入setup命令

2.选择网络服务

3.进行设备配置

4.进行相关参数配置

5.保存后

执行 service network restart

命令重启网络服务

三 修改网络配置文件

打开配置文件:

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

eth0通过 命令 ip addr获取,

在这里插入图片描述

配置内容如下:

  TYPE=Ethernet    #网络类型 以太网

  BOOTPROTO=static

      #1.这里可以为=none(过指定方式的办法来获得地址,如果没有指定的话可能会出现各种各样的网络受限 )

      #2.=dhcp 自动获取ip地址

      #3.=static  固定ip地址

    DEFROUTE=yes

    PEERDNS=yes

    PEERROUTES=yes

    IPV4_FAILURE_FATAL=no

    IPV6INIT=yes

    IPV6_AUTOCONF=yes

    IPV6_DEFROUTE=yes

    IPV6_PEERDNS=yes

    IPV6_PEERROUTES=yes

    IPV6_FAILURE_FATAL=no

    NAME=ens33    #网卡名称(用户看到的网卡名)

    UUID=858e2bc3-1e47-4320-9227-b0029c8csaa6 #网卡的唯一标识符

    DEVICE=enw33      #系统逻辑设备名

    ONBOOT=yes #是否开机启动网卡 选项(no/yes)centos7默认no

    IPADDR=192.168.233.129      #指定的ip地址 如果你是dhcp这里是没有的

    NETMASK=255.255.255.0    #子网掩码

    GATEWAY=192.168.233.1    #网关

    DNS1=114.114.114.114    #指定的第一个DNS服务器

  TYPE=Ethernet    #网络类型 以太网

  BOOTPROTO=static

      #1.这里可以为=none(过指定方式的办法来获得地址,如果没有指定的话可能会出现各种各样的网络受限 )

      #2.=dhcp 自动获取ip地址

      #3.=static  固定ip地址

    DEFROUTE=yes

    PEERDNS=yes

    PEERROUTES=yes

    IPV4_FAILURE_FATAL=no

    IPV6INIT=yes

    IPV6_AUTOCONF=yes

    IPV6_DEFROUTE=yes

    IPV6_PEERDNS=yes

    IPV6_PEERROUTES=yes

    IPV6_FAILURE_FATAL=no

    NAME=ens33    #网卡名称(用户看到的网卡名)

    UUID=858e2bc3-1e47-4320-9227-b0029c8csaa6 #网卡的唯一标识符

    DEVICE=enw33      #系统逻辑设备名

    ONBOOT=yes #是否开机启动网卡 选项(no/yes)centos7默认no

    IPADDR=192.168.233.129      #指定的ip地址 如果你是dhcp这里是没有的

    NETMASK=255.255.255.0    #子网掩码

    GATEWAY=192.168.233.1    #网关

    DNS1=114.114.114.114    #指定的第一个DNS服务器

修改完毕后,进行服务的重启

修改后需 重启网卡

centos 6及之前系统版本的重启命令

/etc/init.d/network restart

或者service netword restart

centos 7重启网卡命令

systemctl restart network

centos 6及之前系统版本的重启命令

/etc/init.d/network restart

或者service netword restart

centos 7重启网卡命令

systemctl restart network

四 图形界面配置IP地址,

进行系统桌面进行配置,和windows的配置类似


3、使用nmcli实现bonding

多网卡绑定

“Bonding” 和 “nmcli的网络组Network Teaming”

二者实现的功能一样,但从某种角度,网络组要比Bonding的技术要好

网络接口配置:Bonding

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

一、Bonding工作模式

多网卡绑定有很多模式,如下:

Mode 0 (balance-rr):

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

Mode 1 (active-backup)

活动-备份(主备)策略:只有一个slave被激活,当且仅当活动的slave接口失败时才会激活其他slave.为了避免交换机发生混乱,此时绑定的MAC地址只有一个外部端口上可见。即,平时只有一个网卡工作,当网卡坏掉会自动启动第二个网卡工作。

Mode 3 (broadcast)

广播策略:在所有的slave接口上传送所有的报文,提供容错能力。即在所有的网卡上传输一样的数据。

还有其它的模式:

active-backup、balance-tlb 和 balance-alb 模式不需要交换机的任何特殊配置。其他绑定模式需要配置交换机以便整合链接。如:Cisco 交换机需要在模式Mode 0、Mode 2 和Mode 3 中使用 EtherChannel,但在模式Mode 4中需要 LACP和EtherChannel

二、Bonding配置

1.bonding设备的配置文件

第一步:创建bonding设备的配置文件

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

推荐的配置的项有:

DEVICE=设备名称,如bond0

BOOTPROTO=协议,如none

BONDING_OPTS=指定工作模式,如 “miimon=100 mode=0”表示工作模式"Mode 0",且没100ms监测一次链路连接状态。

说明:

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

第二步:在要加入bonding的网卡,的配置文件里写入bonding设备的项。如下:

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

DEVICE=eth0

BOOTPROTO=none

MASTER=bond0《======

SLAVE=yes 《======

USERCTL=no

写入上面两行后,网卡就不可以单独工作了,而是成为bonding的附属设备工作。可配置多个网卡配置文件加入bonding设备,且binding所属的网卡,显示的MAC地址都一样。

2.查看bond0的状态

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

查看当前有几个bonding:/sys/class/net/bonding_masters

3.删除bond0

第一步:禁用bonding

ifconfig bond0 down

第二步:卸载bonding驱动模块

rmmod bonding

第三步:删除bonding的配置文件及所属网卡配置文件里bonding的项

第四步:重启网络服务

4.bonding的详细帮助

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

https://www.kernel.org/doc/Documentation/networking/bonding.txt

5.实验Mond 1 活动-备份(主备)策略

1.确保你有两个网卡,并且都在一个网络,如果用虚拟机做实验,要确保两个网卡是一个模式,如“仅主机模式”。

2.创建bonding设备的配置文件

    在/etc/sysconfig/network-scripts目录创建文件ifcfg-bond0

    DEVICE=bond0        \\设备名称 

    BOOTPROTO=none      \\协议

    IPADDR=192.168.36.6    \\bonding的ip地址

    PREFIX=24              \\子网掩码

    GATEWAY=192.168.36.254  \\网关

    DNS1=192.168.36.6      \\DNS 

    BONDING_OPTS=miimon=100 mode=1

3.在网卡的配置文件里加入bonding的项

    进入/etc/sysconfig/network-scripts/ifcfg-ethXX

    添加行:

        MASTER=bond0

        SLAVE=yes

    添加后,文件原来指定的静态或动态地址就会失效,生效的是bonding地址

4.确保NetworkManager服务关闭,并重启network服务

    Centos6:

        service NetworkManager status  查看服务状态

        chkconfig NetworkManager off    \\关闭自动启动

        service NetworkManager stop    \\关闭服务

        service network restart        \\重启网络服务

    Centos7:

        systemctl status NetworkManager 查看服务状态

        systemctl stop NetworkManager  临时停止

        systemctl disable NetworkManager 下次开机即停止服务

        systemctl restart network      \\重启网络服务

5.查看bonding:“ifconfig”

6.检测

    停用一个网卡,在ping“bond0”地址,能ping通证明binding的"Mode 1"模式生效了。

7.查看binding设备中,“Mode 1”模式下,binding所属的哪个网卡在活动:

    方法一:使用watch -n1 netstat -i查看,不明显可以用另一台电脑ping“binding”的IP地址

    方法二:查看/proc/net/bonding/bond0文件

网络组Network Teaming

概念:

网络组:是将多个网卡聚合在一起方法,从而实现冗错和提高吞吐量

网络组不同于旧版中bonding技术,提供更好的性能和扩展性

网络组由内核驱动和teamd守护进程实现.

多种方式(模式)runner:

broadcast(广播策略)《===》对应bonding模式mode 3

roundrobin(轮转策略)《===》对应bonding模式mode 0

activebackup(活动-备份(主备)策略)《===》对应bonding模式mode 1

loadbalance(限定流量)《===》对应bonding模式mode 2

lacp(implements the 802.3ad Link Aggregation Control Protocol:实现802.3ad链路聚合控制协议)《===》对应bonding模式mode 4

参考链接:https://www.cnblogs.com/lqynkdcwy/p/9548668.html

注意事项:

启动网络组接口不会自动启动网络组中的port接口

启动网络组接口中的port接口总会自动启动网络组接口

禁用网络组接口会自动禁用网络组中的port接口

没有port接口的网络组接口可以启动静态IP连接

启用DHCP连接时,没有port接口的网络组会等待port接口的加入

创建网络组

1.创建网络组接口

nmcli con add type team con-name CNAME ifname INAME [config JSON]

CNAME表示连接名

INAME表示接口名

JSON指定runner方式(模式),格式如下:

'{"runner": {"name": "METHOD"}}',其中METHOD 可以是:

broadcast

roundrobin

activebackup

loadbalance

lacp

2.创建port接口

`nmcli con add type team-slave con-name CNAME ifname INAME master TEAM

CNAME 连接名

INAME 网络接口名

TEAM 网络组接口名

连接名若不指定,默认为team-slave-IFACE

nmcli dev dis INAME

nmcli con up CNAME

INAME 设备名 CNAME 网络组接口名或port接口

3.新网络组的配置文件

示例

网络组的配置文件/etc/sysconfig/network-scripts/ifcfg-team0

DEVICE=team0

DEVICETYPE=Team

TEAM_CONFIG="{\"runner\": {\"name\": \"broadcast\"}}"

BOOTPROTO=none

IPADDR0=172.16.0.100

PREFIX0=24

NAME=team0

ONBOOT=yes

网络组所属网卡的配置文件/etc/sysconfig/network-scripts/ifcfg-team0-eth1

DEVICE=eth1

DEVICETYPE=TeamPort

TEAM_MASTER=team0

NAME=team0-eth1

ONBOOT=yes

4.创建网络组示例

示例1:

nmcli con add type team con-name myteam0 ifname team0 config

'{“runner”: {“name”: “loadbalance”}}' ipv4.addresses

192.168.1.100/24 ipv4.method manual

示例2:

nmcli con add con-name team0-eth1 type team-slave ifname eth1 master team0

示例3:

nmcli con add con-name team0-eth2 type team-slave ifname eth2 master team0

示例4:

nmcli con up myteam0

示例5:

nmcli con up team0-eth1

示例6:

nmcli con up team0-eth2

示例7:查看tean0状态

teamdctl team0 state

示例8:

nmcli dev dis eth1

5.实验:创建、删除网络组

1)创建网络组team0

查看网络连接

ip link

创建网络组team0,名字为myteam0,模式是主备模式

nmcli con add type team con-name myteam0 ifname team0 config'{"runner": {"name": "activebackup"}}'

给网络组添加IP地址

nmcli con mod team0 ipv4.addresses '192.168.0.100/24'

手工指定

nmcli con mod team0 ipv4.method manual

将物理网卡eth1加入网络组etam0

nmcli con add con-name team0-port1 type team-slave ifname eth1 master team0

将物理网卡eth2加入网络组etam0

nmcli con add con-name team0-port2 type team-slave ifname eth2 master team0

将网络组关联的两个物理网卡启用

nmcli con up team0-port1

nmcli con up team0-port2

查看网络组状态

teamdctl team0 state

nmcli connection

2.删除网络组team0

首先禁用网络组team0

nmcli connection down team0

查看网络组

teamdctl team0 state

nmcli connection show

删除网络组的网卡设备

nmcli connectioni delete team0-eth0

nmcli connectioni delete team0-eth1

在查看网络组

查看网络组

teamdctl team0 state

nmcli connection show

删除网络组

示例:删除网络组team0

首先禁用网络组team0

nmcli connection down team0

查看网络组

teamdctl team0 state

nmcli connection show

删除网络组的网卡设备

nmcli connectioni delete team0-eth0

nmcli connectioni delete team0-eth1

在查看网络组

查看网络组

teamdctl team0 state

nmcli connection show

你可能感兴趣的:(linux系统运维基础9)