1. RHEL7的网络介绍

  在RHEL7中, NetworkManager 提供的默认联网服务是一个动态网络控制和配置守护进程, 支持ifcfg类型的配置文件. NetworkManager 可用于连接类型: 以太网、网桥、绑定、端口聚合、Wi-Fi、移动宽带及IP-over-infiniBand. 在这些连接类型中, NetworkManager 可配置网络别名、IP地址、静态路由器、DNS信息及VPN连接以及具体的连接参数. 最后, NetworkManager 通过D-bus 提供API, D-Bus 允许应用程序查询并控制网络配置及状态.

2. 配置端口聚合

  端口聚合的守护进程是teamd, 使用libteam 控制聚合中的一个实例. 在聚合实例中添加网卡硬件设备组成端口聚合. 根据端口聚合实现的功能不同, teamd 会工作在不同的模式下, 主要是轮询(roundrobin)、热备(activebackup).

  RHEL7 中安装teamd守护进程:

~]#yum -y install teamd

  使用nmcli 将实验机的eno1、eno2配置成端口聚合

~]#nmcli connection show

  创建端口聚合实例

~]#nmcli connection add type team con-name team0 ifname team0 config '{"runner":{"name":"activebackup"}}'

  向端口聚合实例中添加网卡

~]#nmcli  connection add type team-slave con-name team0-p1 ifname eno1 master team0

~]#nmcli connection add type team-slave con-name team0-p2 ifname eno2 master team0

   激活端口聚合连接实例

~]#nmcli connection up team0

3. DHCP服务

  linux主机通过安装DHCP服务,可以成为网络中的一台DHCP服务器,为同一网络环境下的主机提供合法的IP地址.

  (1)RHEL7默认不安装DHCP服务,可以通过RPM包安装:

~]#yum -y install dhcp

  DHCP安装包自动生成配置文件/etc/dhcp/dhcp.conf, 该配置文件是一个空白配置文件,需要我们自行添加条目.也可以在/usr/share/dhcp-version;/dhcpd.conf.example找到配置模版文件.客户端IP地址数据库保存在/var/lib/dhcpd/dhcpd.leases 文件中.

  dhcp.conf配置示例:

subnet 192.168.1.0 netmask 255.255.255.0 {
option routers 192.168.1.254;
option subnet-mask 255.255.255.0;
option domain-search "example.com";
option domain-name-servers 192.168.1.1;
option time-offset -18000;
range 192.168.1.10 192.168.1.100;
}

  (2)DHCP 配置静态IP地址

  在DHCP配置文件中,通过网卡的MAC地址为客户端分配IP地址, 在host中声明hardware ethernet的参数, 将指定的IP地址绑定到网卡的MAC地址.

host apex {
option host-name "apex.example.com";
hardware ethernet :A0::8E:9E:AA;
fixed-address 192.168.1.4;
}

  (3)DHCP为infiniBand IPtoIB分配静态IP地址

  RHEL7支持为infiniBand IPtoIB 的借口分配静态IP地址, 但是由于infiniBand网络中, IPtoIB接口没有正常的MAC地址,在配置文件host声明中使用选项dhcp-client-identifier= 指定IPtoIB接口. DHCP服务器最多可支持一个MAC地址的以太网,在每个主机段(IPv4地址)支持一个dhcp-client-identifier记录, 可能同时存在多个固定地址条目.

  在InfiniBand网络中,主机有两个InfiniBand接口,每个物理接口中都配置了P_Key接口,还有一个以太网连接,则可使用如下静态IP配置:

Host apex.0 {
option host-name “apex.example.com”;
hardware ethernet 00:A0:78:8E:9E:AA;
option dhcp-client-identifier=ff:00:00:00:00:00:02:00:00:02:c9:00:00:02:c9:03:00:31:7b:11;
fixed-address 172.31.0.50,172.31.2.50,172.31.1.50,172.31.3.50; #根据实际网络环境配置
}
host apex.1 {
option host-name “apex.example.com”;
hardware ethernet 00:A0:78:8E:9E:AB;
option dhcp-client-
identifier=ff:00:00:00:00:00:02:00:00:02:c9:00:00:02:c9:03:00:31:7b:12;
fixed-address 172.31.0.50,172.31.2.50,172.31.1.50,172.31.3.50; #根据实际网络环境配置
}

  如果dhcp-client-identifier 的值不匹配,可以使用Tcpdump抓取IPtoIB 的DHCP请求包,从请求包中获取正确的dhcp-client-identifier值.

  (4)DHCP中继代理

  DHCP中继代理程序dhcrelay可以使没有DHCP服务器的子网向其它子网中的一个多个DHCP服务器发出DHCP和BOOTP请求. DHCP客户端发送DHCP请求时,DHCP中继代理程序会将该请求转发到启动DHCP中继代理时指定的DHCP服务器.

  dhcrelay配置:

~]# cp /lib/systemd/system/dhcrelay.service /etc/systemd/system/
~]# vi /etc/systemd/system/dhcrelay.service

/*编辑 [Service] 部分的 ExecStart 选项,在结尾处添加一个或多个服务器 IPv4 地址
ExecStart=/usr/sbin/dhcrelay -d --no-pid 192.168.1.1

/*使用 -i 参数指定 DHCP 中继代理侦听 DHCP 请求的接口
ExecStart=/usr/sbin/dhcrelay -d --no-pid 192.168.1.1 -i em1

~]# systemctl --system daemon-reload
~]# systemctl restart dhcrelay

  RHEL7的网络服务功能非常强大,对于复杂网络配置, NetworkManger 无法管理, 通常是根据模版文件按照实际网络环境配置.

RHEL7系统管理之网络管理的更多相关文章

  1. RHEL7系统管理常用工具

    RHEL7提供大量系统管理工具,简要记录一下各工具的作用,后续再详细说明用法. 工具 描述 /proc linux的内存镜像目录./proc/sys目录下的文件能被临时修改,从而改变linux内核参数 ...

  2. RHEL7系统管理之资源管理

    1. CGroup(控制群组).slice(切片).scop.service 控制群组(control group)是linux kernel的一项功能, 该功能允许linux对RHEL7中syste ...

  3. RHEL7系统管理之内核管理

    1. Kdump工具 Kdump的工作机制是在内核崩溃时, 通过kexec 工具由BIOS启动一个备用内核, 由备用内核执行一系列任务,保存内存中崩溃内核的状态, 供后续故障分析用. 本文默认AMD或 ...

  4. Linux系统管理_网络管理

    常用网络指令 yum -y install net-tools #安装ifconfig工具 ifconfig #查看网络配置 ifup ens33 #启用网卡 ifdown ens33 #禁用网卡 s ...

  5. [转自51CTO]ITIL与ISO20000的关系

    ITIL它不是一个服务管理标准,而更应该说是一种结构化的方法或流程框架.基于这种方法和框架,已经有越来越多的IT服务管理标准被开发出来了.在这些基于ITIL的IT服务管理标准中,最突出的要属英国标准B ...

  6. Linux 系统结构

    Linux的系统结构一般由四部分组成 内核 1)内核 操作系统的核心,具有最基本的功能:内存管理.进程管理.设备驱动管理.文件系统管理,网络管理 内核版本(kernel)查看的三种方法 cat /pr ...

  7. Linux学习计划

    用Linux已经有很长一段时间了,先后用过Debian和CentOS,但一直没有系统地去学习,现在一是有时间,二是工作中需要用到,所以准备用心去学习一下. 一.教材 1.主要以<鸟哥Linux& ...

  8. 老司机浅谈linux系统学习技巧

    Linux起源于20世纪70年代,是一种优秀的操作系统系统.初次接触到linux这个系统是在大学期间,这样才发现除了windows外的另外一个有趣系统.开始抱着好奇的心态去了解,随着深入学习,笔者被它 ...

  9. 自学Linux Shell1.1-Linux初识

    点击返回 自学Linux命令行与Shell脚本之路 1.1-Linux初识(架构.内核.shell) 1. Linux架构 Linux系统一般有4个主要部分:内核.shell.文件系统和应用程序.(有 ...

随机推荐

  1. android-zip解压缩方法

    /** * 解压缩文件到指定的目录. * * @param unZipfileName * 需要解压缩的文件(带路径) * @param mDestPath * 解压缩后存放的路径 **/ publi ...

  2. ILSpy工具使用

    Reflector是.NET开发中必备的反编译工具.即使没有用在反编译领域,也常常用它来检查程序集的命名规范,命名空间是否合理,组织类型的方法是否需要改善.举例说明,它有一个可以查看程序集完整名称的功 ...

  3. web前端html快速入门

    HTML 学前端之间不得不知道一个网站:http://www.w3school.com.cn/ 网上有很多教程关于前端的,写的特别详细,也写的特别好.我们应该要自已理解,一些相应的前端的知识,不能只是 ...

  4. 使用python遍历文件夹取出特定的字符串

    # -*- coding: utf-8 -* import re import os # 需要处理的文件夹路径(绝对路径) path = u"/Users/a140/Downloads/te ...

  5. 用python itchat写一个微信机器人自动回复

    首先看一下效果: 进入正题: 一.首先要去图灵机器人网站注册一个机器人账号: 链接:http://www.tuling123.com/ 你可以获取自己的图灵机器人apikey 懒得话不注册也可以,我下 ...

  6. ASP.NET Core 中的缓存

    目录 缓存的基本概念 缓存原理 缓存设计 分布式缓存 Memcache 与 Redis 的比较 缓存穿透,缓存击穿,缓存雪崩解决方案 数据一致性 使用内置 MemoryCache 使用分布式缓存 Re ...

  7. ABP实战--修改语言配置XML至Json

    从ABP官网下载的Zero的多语言配置默认是使用XML文件的,实际使用中XML是没有Json简洁明了的,所以我们将其修改为Json格式. 修改MyLocalizationConfigurer.cs文件 ...

  8. 开始使用Newbe.Pct-Web自动化测试

    前篇介绍了,使用 Newbe.Pct 之前的准备工作.本篇将开始介绍如何使用本项目运行第一个测试用例. 阅前语 从本篇开始,读者将会接触到使用一些代码.希望读者不必纠结于语法本身.出现代码的地方都会伴 ...

  9. 三种数据库访问——Spring JDBC

    本篇随笔是上两篇的延续:三种数据库访问——原生JDBC:数据库连接池:Druid Spring的JDBC框架 Spring JDBC提供了一套JDBC抽象框架,用于简化JDBC开发. Spring主要 ...

  10. [javaSE] 变量的传值与传址

    变量:就是将不确定的数据进行存储.也就是需要在内存中开辟一个空间 这个空间需要一个名称,这个名称就是变量名 基本数据类型:byte,short,int,long,double,float,char,b ...