配置网络及聚合连接

配置网络

 临时配置:命令行调整,重启后失效

--> ifconfig、hostname、route、arp

修改IP地址: ifconfig  接口名称  IP地址[/掩码长度]

    禁用、激活网络接口: ifconfig  接口  down

ifconfig  接口  up

    修改主机名: hostname  新的主机名

    添加/删除默认网关记录: route  add  default  gw  IP地址

route  del  default  gw  IP地址

    添加静态路由: route  add  -net  目标网段  gw  IP地址

route  del  -net  目标网段

固定配置:静态文件,重启后仍然有效

        --> 主机名、网卡、DNS、hosts

** 修改网卡配置文件 --> 重启network服务

1.查看/设置IP地址:  ifconfig      只显示活跃的网卡接口

Ø ifconfig [接口名]   如:#ifconfig eth0 查看网卡eth0的ip设置

Ø ifconfig -a        显示所有的网卡,包括被禁用的

Ø ifconfig [接口名] IPv4地址[/掩码长度]       //临时修改IP地址

** HWaddr: 对应的是网卡的MAC地址

** inet addr: 对应的是IPv4地址

** 主要接口类型:

ethN 以太网连接、lo 本地回环接口

sitN:ipv6地址网卡接口

fddN:光纤网卡

PPPN:ADSL宽带或VPN连接

2.查看主机名: hostname

临时配置主机名:hostname xxxx                  //xxxx为新主机名

配置静态主机名:/etc/hostname

配置步骤:

1)配置前, 检查是否设置静态主机名

[root@server0 ~]# hostnamectl 

   Static hostname:n/a                     //未设置静态主机名

2)设置为指定的主机名

[root@server0 ~]# vim  /etc/hostname      //建立主机名配置文件

server0.example.com                           //自定义主机名

3)配置后,检查结果

[root@server0 ~]# hostnamectl 

   Static hostname: server0.example.com     //已设置静态主机名

重新登录后,可看到命令行提示中的新主机名变化 

3.检查本机的路由表查看网关地址     

 route  -n  或 netstat  -rn

** 标记为“UG”的表示网关记录

** 到目标网段 0.0.0.0/0.0.0.0 网关记录称为“默认网关”

4.netstat  显示本机所有网络接口关于服务程序的监听地址、端口的信息

-a    显示所有的接口 all

-n    以数字方式显示 number

-p    进程信息 (进程号PID)      

-t    tcp连接 

-u    udp连接

        -l    列出本机监听的连接

常用组合:netstat -anptu | grep 程序

** 状态 LISTEN 表示有对应监听的网络服务

** 状态 ESTABLISHED 表示已建立的TCP连接

** 状态 TIME_WAIT 表示在等待客户端请求的连接

示例:netstat  -anptu | grep :80  ==>查看Web服务的监听状态进程

  netstat  -anptu | grep httpd ==>查看httpd进程的监听端口

5.查看 arp缓存表: arp  -an

6.测试网络

 1)测网络连通性

格式:ping  目标主机

** 选项 -c 包个数、-s 包大小

** 默认会持续ping,按Ctrl+c可终止

** 返回 “xx bytes from 目标主机...” 表示连接正常

** 返回 “Request timeout” 表示网络不通,或者延迟较大

** 返回 “Network is unreachable” 表示网络不可达,通常是未设置默认网关

** 返回 “Destination Host Unreachable” 表示目标主机不可达,配置不通或未开机

 2)测试域名解析

格式:host  域名或目标主机IP  [DNS服务器]

      nslookup  域名或目标主机IP  [DNS服务器]

[root@room9pc14 桌面]# host www.qq.com

www.qq.com has address 182.254.18.159

www.qq.com has IPv6 address 240e:e1:8100:28::2:16

** 必须有可用的DNS服务器,否则将无法解析

** 若无法解析域名,就不能以域名的方式访问目标站点

** 若测试时未指定DNS服务器地址,则使用 /etc/resolv.conf中设置的地址

  3)跟踪路由过程

格式:tracert    目标地址

      traceroute    目标地址

      mtr    目标地址 【集成ping和tracert优势】

###############################################################################

    网卡配置文件路径:/etc/sysconfig/network-scripts/ifcfg-接口名

                                   --> IP地址、MAC地址、子网掩码、默认网关

        ** 典型配置含义:

DEVICE=eth0   //设备名

TYPE=Ethernet   //网络类型

BOOTPROTO=none   //或者dhcp、static

HWADDR=00:0C:29:82:09:E9   //物理MAC地址

ONBOOT=yes   //是否启用

NETMASK=255.255.255.0   //子网掩码

IPADDR=192.168.8.128   //指定的静态IP地址

 

          **可以通过MACADDR=00:0C:29:82:09:E8 修改mac地址注意注释原来的行

 

    主机名配置:/etc/sysconfig/network

HOSTNAME=新的主机名

        GATEWAY=192.168.8.1   //默认网关地址

    DNS设置:/etc/resolv.conf

search localdomain   //默认搜索域/后缀

nameserver 192.168.4.1   //DNS服务器1的IP地址

nameserver 202.106.0.20   //DNS服务器2的IP地址

 

** 还可在网卡配置中设置 DNS1=、DNS2= 来指定,但不推荐使用

** 因为重启 network 服务后,还是会自动写入到 /etc/resolv.conf 文件内

 

    本地主机名映射文件:/etc/hosts

** 用来存放“主机名àIP地址”映射记录

** 可提高域名解析效率(先找hosts文件,再找DNS服务器)

 

    静态路由:/etc/sysconfig/network-scripts/route-eth1

        cat /etc/sysconfig/network-scripts/route-eth1

        10.0.0.0/8      via 192.168.10.252 dev eth1

        去往的网段      via    下一跳地址   dev  出口设备

###############################################################################

修改网卡名

[root@localhost /]# > /etc/udev/rules.d/70-persistent-net.rules  #清空udev规则

[root@localhost /]# /etc/sysconfig/network-scripts/ifcfg-eth0  #删除网卡配置文件中MAC地址,修改IP地址保证不冲突

[root@localhost /]# init 6  #重启验证

[root@localhost /]# 如果重启后,eth0没有IP地址。可以尝试重启network服务

###############################################################################

nmcli连接管理

1.查看网络接口

nmcli connection show           

nmcli connection show “连接名” 

[root@server001 ~]# nmcli connection show

2.修改网络连接配置

nmcli connection modify “连接名”参数1 值1 ……

常用参数:

ipv4.method auto|manual

ipv4.address “IP地址/掩码长度「默认网关」” 

ipv4.dns DNS服务器地址

connection.autoconnect yes|no               //每次开机时是否自动启用

# nmcli connection 修改  '连接名'  ipv4.方式   手动配置  ipv4.地址为 'IP地址/子网掩码  网关地址' ipv4.dns  DNS服务器地址 每次开机时自动启用

验证修改成功:# cat /etc/sysconfig/network-scripts/ifcfg-eth0 

网卡配置文件:/etc/sysconfig/network-scripts/ifcfg-eth0 

rhel7.2 配置ip与网关:

# nmcli connection modify 'System eth0' ipv4.method manual ipv4.addresses '172.25.0.11/24' ipv4.gateway 172.25.0.254 ipv4.dns '172.255.254.254' connection.autoconnect yes

###############################################################################

使用图形界面配置IP地址

  在虚拟机svrver0上操作

   # nm-connection-editor----->edit------》ipv4-------->manual-----》add

###############################################################################

3.激活/禁用网络连接: nmcli connection up|down “连接名” 

#nmcli connection up 'System eth0'   #刷新配置

systemctl restart NetworkManager

# ifconfig   #查看IP地址,是否生效

4.添加/删除网络连接

nmcli  con  add  con-name  "连接名"   ifname  "网卡名"  type  ethernet  

nmcli  con  delete  "连接名"  

5.配置永久的DNS服务器地址  (配置完立即生效)

配置文件: /etc/resolv.conf     (DNS最终有效配置文件)

         关键记录:nameserver DNS服务器地址

# vim /etc/resolv.conf      #指定DNS服务器地址 

# cat /etc/resolv.conf  

Search example.com      //默认域后缀

nameserver 172.40.1.10   //设置DNS服务器地址

###########################

示例:配置静态IP地址参数

1)查看当前主机的网卡设备的连接名称、网络连接

[root@server0 ~]# nmcli  connection   show

名称         UUID                                  类型            设备 

System eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  802-3-ethernet  eth0

2)修改连接“System eth0”的配置,将配置方式指定为manual,指定IP地址、默认网关、DNS地址,并配置自动连接:

[root@server0 ~]# nmcli  connection  modify  "System eth0"  ipv4.method  manual  ipv4.addresses  "172.25.0.11/24  172.25.0.254"  ipv4.dns  172.25.254.254  connection.autoconnect  yes

3)重新激活连接“System eth0”(通过up指令激活连接配置,必要时也可先down再up)

[root@server0 ~]# nmcli  connection  up  "System eth0"   //激活连接

Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/1)

确保系统服务NetworkManager开机自启:

1.[root@server0 ~]# systemctl  restart  NetworkManager

2.[root@server0 ~]# systemctl  enable  NetworkManager

4)检查修改结果,确认无误

检查IP地址:[root@server0 ~]# ifconfig  eth0

检查默认网关地址:[root@server0 ~]# route  -n

检查DNS服务器地址:[root@server0 ~]# cat  /etc/resolv.conf 

如果在使用nmcli修改网络连接时并未指定ipv4.dns,也可以直接修改DNS客户端配置文件/etc/resolv.conf,确保添加即可。

通过ssh远程访问验证网络配置结果,可以通过 命令host主机名查询主机的ip地址。

###############################################################################

配置高级连接

配置ipv6地址    ——同ipv4   

IPv4地址表示:32个二进制位,点分十进制数

IPv6地址表示:128个二进制位,冒号分隔的十六进制数

              每段内连续的前置0可省略、连续的多个:可简化为::

针对IPv6目标地址的连通性测试应使用ping6命令工具。

nmcli命令行配置

基本配置方法

1)查看连接名:nmcli connection show  

2)nmcli connection modify "连接名"  ipv6.method  manual  ipv6.addresses "IPv6地址/掩码长度[默认网关]" connection.autoconnect yes

3)激活更改过的连接(必要时先down再up):nmcli connection up “连接名

# ping6  IPv6目标地址

###############################################################################

示例:配置IPv6地址

步骤一:修改主机server0的网卡eth0的配置

1)确认网卡eth0所属的网络连接名(NAME)

    [root@server0 ~]# nmcli  connection  show

       NAME         UUID                                 TYPE         DEVICE 

    System eth0  5fb06bd0-0bb0-7ffb-45f1-d6edd65f3e03  802-3-ethernet  eth0

2)修改此连接的IPv6地址配置

使用方法一(命令行):

    [root@server0 ~]# nmcli  connection  modify  "System eth0"  ipv6.method  manual  ipv6.addresses  "2003:ac18::305/64" connection.autoconnect yes

或者,使用方法二(图形工具),运行nm-connection-editor,在打开的图形程序界面中双击连接名称System eth0,选择“IPv6 Settings”选项卡。

然后在“Method”处下拉选择“Manual”,再单击中间栏右侧的“Add”按钮添加指定的IPv6地址2003:ac18::305、掩码长度64,勾选底部的“Require IPv6 addressing for this connection to complete”,最后单击右下角的“Save”保存,并关闭配置窗口。

3)激活新配置

    [root@server0 ~]# nmcli  connection  up  "System eth0" 

Connection successfully activated (D-Bus active path:   

  /org/freedesktop/NetworkManager/ActiveConnection/1)

4)确认地址已成功设置

执行ifconfig命令可以看到新增加的IPv6地址:

    [root@server0 ~]# ifconfig  eth0  |  grep  inet6

      inet6 2003:ac18::305  prefixlen 64  scopeid 0x0   //确认地址

   或用ping6命令:[root@server0 ~]# ping6 2003:ac18::305

步骤二:修改desktop0的网卡eth0的配置,除IPv6地址以外,其他操作与步骤一相同。

步骤三:测试主机server0、desktop0之间的IPv6地址互连

在server0上,使用ping6命令测试desktop0的IPv6地址,可以正常连通:

    [root@server0 ~]# ping6  2003:ac18::306

步骤四:确保配置有正确的静态主机名,避免重启后无法确定本机的主机名,容易引起混淆。

对于主机server0:[root@server0 ~]# hostnamectl  set-hostname erver0.example.com

                  [root@server0 ~]# hostnamectl 

                  Static hostname: server0.example.com

对于主机desktop0:[root@desktop0 ~]#hostnamectl set-hostname desktop0.example.com

                  [root@desktop0 ~]# hostnamectl 

                  Static hostname: desktop0.example.com

###############################################################################

配置聚合连接

链路聚合的优势

聚合连接team),也称为链路聚合:

指的是网络连接的捆绑/组队,通过将多个实际网卡(team-slave)整个为逻辑上的单个连接,实现负载均衡、热备份等单块网卡难以完成的特殊功能。

由多块网卡(team-slave)一起组建而成的虚拟网卡,即“组队”。

 活跃路由器(192.168.1.253)   备份路由器(192.168.1.252)  |  eth1     eth2

                   虚拟路由器(192.168.1.254)              |      team 

聚合连接的类型

轮询式(roundrobin)的流量负载均衡

热备份(activebackup)连接冗余

热备份-聚合连接(activebackup):   {"runner":{"name":"activebackup"}}

负载均衡-聚合连接(roundrobin):   {"runner":{"name":"roundrobin"}}

定义聚合连接的类型配置时,采用JSON语法标记,主要特点如下:

  标记一个对象——{对象}    每一个对象——名称:值      每一个字符串——"字符串"

实现链路聚合的条件

网络接口的准备:2块或2块以上的物理网卡  #ifconfig -a | grep ^eth

nmcli命令行配置

配置的准备(思路):

连接名称(con-name):由管理员自定义的名称

接口名称(ifname):由内核识别的实际的网卡设备的名

获取配置team聚合连接的用法帮助 ——man  nmcli-examples ==》查找 Team1

1)新建聚合连接team0,为聚合连接提供配置(类型、连接名、运行器、IP地址、运行类型)

格式:# nmcli connection add type team con-name "聚合连接名" ifname "接口名" 

        每次开机自动连接 config '运行配置'

# nmcli connection add type team con-name team0 ifname team0    //二者位置可以互换

  autoconnect yes                                            //开机自动启用

  config '{"runner": {"name": "activebackup"}}'       //可以通过man team.conf查找

                        运行器的类型切换(查看team帮助信息:man teamd.conf  ==》 /"runner)

                                        在所有的帮助中查找:/example   按G到末行

 第二种方法修改方式                  按键盘上'n'可以跳转匹配    按'q'退出

# nmcli connection modify team0 

team.config '{"runner": {"name": "activebackup"}}'

生成的配置文件 :/etc/sysconfig/network-scripts/ifcfg-team0

2)创建组成员,为成员网卡提供配置(类型、连接名、主连接)

格式:#nmcli connection add type team-slave con-name "第几块成员网卡连接名" 

       ifname "第几块成员网卡接口名"  master "聚合连接名" 每次开机自动连接

添加成员网卡(team0-1 ==> eth1、team0-2 ==> eth2)

成员1#nmcli connection add type team-slave 

       con-name team0-1 ifname eth1 master team0 autoconnect yes                     

成员2#nmcli connection add type team-slave 

       con-name team0-2 ifname eth2 master team0  autoconnect yes   

3)组队的内部分配方式(配IP),为热备份

  #nmcli connection modify team0  ipv4.method manual ipv4.addresses 192.168.1.1/24     

   connection.autoconnect yes

4)分别激活聚合连接、激活成员网卡

   #nmcli connection up team0

   #nmcli connection up team0-1

   #nmcli connection up team0-2

5)检查聚合连接运行状态:#teamdctl team0 state  

6)如果配置错误,要删除配置后重新配置

    # nmcli connection delete team0 

    # nmcli connection delete team0-1

    # nmcli connection delete team0-2

    #  在重新配置一遍team0

7)测试

Ping测试    ifconfig eth1 down     //man teamd.conf查看

示例:配置聚合连接

在两个虚拟机 server0、desktop0之间配置一个链路,要求如下:

    此链路使用接口 eth1 和 eth2; 此链路在其中一个接口失效时仍然能工作

    此链路在 server0 上使用下面的地址 172.16.3.20/255.255.255.0

    此链路在 desktop0 上使用下面的地址 172.16.3.25/255.255.255.0

    此链路在系统重启之后依然保持正常状态

除了所配置的IP地址不一样以外,在server0、desktop0主机上的其他操作相同。

此处仅列出在server0上的配置过程。

步骤一:准备练习用网卡环境

新建的聚合连接将组合新增加的两块网卡eth1、eth2。

    [root@server0 ~]# ifconfig 

步骤二:创建聚合连接配置

1)新建聚合连接

nmcli  con  add  con-name  team0  type  team  ifname team0 

 config  '{ "runner":{ "name":"activebackup" }  }'

    Connection 'team0' (8e61d730-50ff-4a7b-8ca0-fcf5955f6ea7) successfully added.

2)配置IPv4地址

# nmcli  con  modify  team0  ipv4.method  manual  ipv4.addresses  '172.16.3.20/24'  connection.autoconnect  yes

3)新建聚合成员连接

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

Connection 'team0-p1' (a62d23a2-9a2a-4855-8fbc-60ce1fd43f0b) successfully added.

或   # nm-connection-editor

     .. .. //添加team0,添加成员网卡eth1、eth2,配置热备份,配置IP地址

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

    Connection 'team0-p2' (f4d4980e-8123-4840-89ac-1af148cc2eea) successfully added.

步骤三:激活聚合连接

1)激活聚合连接

   [root@server0 ~]# nmcli  connection  up  team0

2)激活聚合成员连接

    [root@server0 ~]# nmcli  connection  up  team0-p1 

[root@server0 ~]# nmcli  connection  up  team0-p2

步骤四:确认聚合连接状态

1)查看聚合连接地址

    [root@server0 ~]# ifconfig  team0

2)查看聚合连接运行状态

    [root@server0 ~]# teamdctl  team0  state

    setup:

      runner: activebackup                              //运行模式/类型

    ports:

      eth1                                              //成员网卡1

      eth2                                             //成员网卡2

    runner:

      active port: eth1                                  //当前活动的成员网卡

 

你可能感兴趣的:(网络配置)