RHEL7系统管理之网络管理
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系统管理之网络管理的更多相关文章
- RHEL7系统管理常用工具
RHEL7提供大量系统管理工具,简要记录一下各工具的作用,后续再详细说明用法. 工具 描述 /proc linux的内存镜像目录./proc/sys目录下的文件能被临时修改,从而改变linux内核参数 ...
- RHEL7系统管理之资源管理
1. CGroup(控制群组).slice(切片).scop.service 控制群组(control group)是linux kernel的一项功能, 该功能允许linux对RHEL7中syste ...
- RHEL7系统管理之内核管理
1. Kdump工具 Kdump的工作机制是在内核崩溃时, 通过kexec 工具由BIOS启动一个备用内核, 由备用内核执行一系列任务,保存内存中崩溃内核的状态, 供后续故障分析用. 本文默认AMD或 ...
- Linux系统管理_网络管理
常用网络指令 yum -y install net-tools #安装ifconfig工具 ifconfig #查看网络配置 ifup ens33 #启用网卡 ifdown ens33 #禁用网卡 s ...
- [转自51CTO]ITIL与ISO20000的关系
ITIL它不是一个服务管理标准,而更应该说是一种结构化的方法或流程框架.基于这种方法和框架,已经有越来越多的IT服务管理标准被开发出来了.在这些基于ITIL的IT服务管理标准中,最突出的要属英国标准B ...
- Linux 系统结构
Linux的系统结构一般由四部分组成 内核 1)内核 操作系统的核心,具有最基本的功能:内存管理.进程管理.设备驱动管理.文件系统管理,网络管理 内核版本(kernel)查看的三种方法 cat /pr ...
- Linux学习计划
用Linux已经有很长一段时间了,先后用过Debian和CentOS,但一直没有系统地去学习,现在一是有时间,二是工作中需要用到,所以准备用心去学习一下. 一.教材 1.主要以<鸟哥Linux& ...
- 老司机浅谈linux系统学习技巧
Linux起源于20世纪70年代,是一种优秀的操作系统系统.初次接触到linux这个系统是在大学期间,这样才发现除了windows外的另外一个有趣系统.开始抱着好奇的心态去了解,随着深入学习,笔者被它 ...
- 自学Linux Shell1.1-Linux初识
点击返回 自学Linux命令行与Shell脚本之路 1.1-Linux初识(架构.内核.shell) 1. Linux架构 Linux系统一般有4个主要部分:内核.shell.文件系统和应用程序.(有 ...
随机推荐
- 白月黑羽Python在线教程
推荐白月黑羽Python在线教程 白月黑羽 站在初学者的角度为大家安排了Python学习教程,帮助大家迅速掌握程序开发技能. http://www.python3.vip/doc/tutorial/p ...
- manjaro开启sdd trim
$ sudo systemctl enable fstrim.timer; $ sudo systemctl start fstrim.service; $ sudo systemctl stat ...
- Java跨语言调用,使用JNA访问Java外部接口
1. JNA简单介绍 先说JNI(Java Native Interface)吧,有过不同语言间通信经历的一般都知道,它允许Java代码和其他语言(尤其C/C++)写的代码进行交互,只要遵守调用约定即 ...
- Java并发编程笔记之ThreadLocalRandom源码分析
JDK 并发包中 ThreadLocalRandom 类原理剖析,经常使用的随机数生成器 Random 类的原理是什么?及其局限性是什么?ThreadLocalRandom 是如何利用 ThreadL ...
- boost::asio基本使用
一.Asio网络库 截止到C++17,C++标准库都没有加入网络通信库.实际项目网络编程是非常常见的功能,直接使用操作系统API是低效率且不稳定的,比较好的方法是借助第三方成熟可靠的网络库.据我所知C ...
- 玩转mongodb(一):初识mongodb
简介: MongoDB是一个开源的文档数据库,支持高性能.高可用性.自动缩放. 在MongoDB中,一条记录就是一个文档,是由字段和值对构成一个数据结构,类似于JSON对象.字段的值可以包括其他文档. ...
- 关于js的 for...in 你了解多少
For...In 声明用于对数组或者对象的属性进行循环/迭代操作. 1. 求value: 对于数组 ,迭代出来的是数组元素,对于对象,迭代出来的是对象的属性值: 1)数组示例 var x var my ...
- SpringBoot 初接触之 404
1. 确认输入项目路径是否正确,如:http://localhost:8080/index,这里需要注意的是端口号的查看 2. 确认注解是否用对 在 Controller 层类上面使用的注解是 @Re ...
- CUBA 使用 Spring 查询接口
原文链接:https://www.cuba-platform.com/blog/spring-query-interfaces-in-cuba 翻译:CUBA China CUBA-Platform ...
- 2<<3=?
public static void main(String[] args) { // TODO Auto-generated method stub System.out.println(" ...