红帽学习笔记[RHCE]网络配置与路由转发
网络配置基本的IPV4与IPV6
拓扑图
最终要实现的目标
- 虚拟机
RHEL1
与RHEL2
能够通过IPV6地址互相Ping
通 - 通过
/etc/hosts
配置,使用RHEL1
与RHEL2
可以通过域名Ping
通 RHEL1
与RHEL2
的 IPV4地址能够互相Ping
通- 物理机能够通过IPV6的地址
SSH
到任何一台虚拟机上
操作
新加一块网卡
VMWare
->编辑
->虚拟网络编辑器
->添加网络
->选择一块网卡,我选择了VMnet16
注: Win10
需要点击下面的用管理员运行的按钮更改设置
。
- 配置网卡
1. 仅主机模式
2. 选中`将主机虚拟适配器连接到此网络`
3. 子网IP `192.168.22.0`,子网掩码不用改`255.255.255.0`
- 点击确定
- 此时在物理机上尝试
ping 192.168.22.1
应该是可以Ping
通的。WMware
会吧这个网段上192.168.22.1
这个ip分给物理机。n
将增加的网卡分别加到两台虚拟机上
右键虚拟机
->设置
->添加
->网络适配器
->完成
- 选中刚才添加的
网络适配器
进行配置
1. 设备状态不需要更改
2. 网络连接 选中`自定义(U):特定虚拟网络`
3. 在下拉列表中选中自己添加的网卡,我的是`VMnet16`
4. 确定
- 第二台虚拟机做同样的操作
在两台虚拟机上配置IPV4
与 IPV6
在两台虚拟机上 ip addr
# 第一台
[root@rhel1 Desktop]# ip addr
4: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:fb:7d:19 brd ff:ff:ff:ff:ff:ff
# 第二台
[root@rhel2 ~]# ip addr
8: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:10:6a:95 brd ff:ff:ff:ff:ff:ff
注: 本次添加后,两块网卡的名称切好都是eno16777736
,而其实未必是这样,本次恰好两台虚拟机都是配置的第一块网卡是VMnet16
,如果配置时 第几块不一样的时候,名称也将不同。
配置IPV4
网络
VMnet16 网段是 192.168.22.0 对应的物理机IP是 192.168.22.1
- 第一台设备
##添加配置
[root@rhel1 Desktop]# nmcli connection add con-name ipv4-ipv6 ifname eno16777736 type ethernet ip4 192.168.22.10/24
Connection 'ipv4-ipv6' (2371b109-1edb-4e73-b4e1-b03068581d96) successfully added.
## 启动
[root@rhel1 Desktop]# nmcli connection up ipv4-ipv6
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/8)
## 查看
[root@rhel1 Desktop]# nmcli connection show
NAME UUID TYPE DEVICE
ipv4-ipv6 2371b109-1edb-4e73-b4e1-b03068581d96 802-3-ethernet eno16777736
## 查看 `ip addr`
[root@rhel1 Desktop]# ip addr
4: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:fb:7d:19 brd ff:ff:ff:ff:ff:ff
inet 192.168.22.10/24 brd 192.168.22.255 scope global eno16777736
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fefb:7d19/64 scope link
valid_lft forever preferred_lft forever
## 在物理机上ping这个IP
C:\Users\kanewang>ping 192.168.22.10
Pinging 192.168.22.10 with 32 bytes of data:
Reply from 192.168.22.10: bytes=32 time<1ms TTL=64
Reply from 192.168.22.10: bytes=32 time=1ms TTL=64
Reply from 192.168.22.10: bytes=32 time=1ms TTL=64
Reply from 192.168.22.10: bytes=32 time<1ms TTL=64
Ping statistics for 192.168.22.10:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 1ms, Average = 0ms
- 第二台设备做同样操作
IP 是 192.168.22.11
## 在物理机上ping
C:\Users\kanewang>ping 192.168.22.11
Pinging 192.168.22.11 with 32 bytes of data:
Reply from 192.168.22.11: bytes=32 time=3ms TTL=64
Reply from 192.168.22.11: bytes=32 time=2ms TTL=64
Reply from 192.168.22.11: bytes=32 time=1ms TTL=64
Reply from 192.168.22.11: bytes=32 time<1ms TTL=64
Ping statistics for 192.168.22.11:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 3ms, Average = 1ms
## 在第一台虚拟机上ping
[root@rhel1 Desktop]# ping 192.168.22.11
PING 192.168.22.11 (192.168.22.11) 56(84) bytes of data.
64 bytes from 192.168.22.11: icmp_seq=1 ttl=64 time=0.753 ms
64 bytes from 192.168.22.11: icmp_seq=2 ttl=64 time=3.82 ms
^C
--- 192.168.22.11 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms
rtt min/avg/max/mdev = 0.753/2.288/3.823/1.535 ms
nmcli connect add
命令
# 敲到 add 这一级别后 按两次 `Tab` 都有提示
[root@rhel1 Desktop]# nmcli connection add
autoconnect con-name help ifname type
1. autoconnect 是否自动连接
2. con-name 显示名称
3. help 帮助
4. ifname 网卡的名称 本次是`eno16777736`打eno两次tab也能出来
5. type 连接方式
6. ip4 配置ipv4的IP
配置IPV6
网络
IPV6
我们同样使用这块网卡,但是WMware
并没有给物理机配置IPV6
我们需要手动配置。
- 配置物理机在网卡
VMnet16
上的IPV6
地址:2019:ffff::1
注:::
在IPV6
中的意思是缩写,代表:连续多组0
物理机
->控制面板
->Network and Internet
->Network and Sharing Center
-> 左边栏Change adapter settings
->VMware Network Adapter VMnet16
右键
->Properties 属性
->点一下 Internet Protocol Version 6(TCP/IPV6)
- 此时下面的
Properties 属性
按钮可点击。点击。 - 勾中
Use the following IPV6 address:
分别填入
IPv6 address (IPv6地址): 2019:ffff::1
Subnet prefix length(子网前缀长度): 64
点击确定
- 本机测试一下
C:\Users\kanewang>ping -6 2019:ffff::1
Pinging 2019:ffff::1 with 32 bytes of data:
Reply from 2019:ffff::1: time<1ms
Reply from 2019:ffff::1: time<1ms
Reply from 2019:ffff::1: time=1ms
Reply from 2019:ffff::1: time<1ms
Ping statistics for 2019:ffff::1:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 1ms, Average = 0ms
- 配置第一台虚拟机的
IPV6
## 修改 `ipv4-ipv6`的链接配置
# 一定要加上 ipv6.method manual
[root@rhel1 Desktop]# nmcli connection modify ipv4-ipv6 ipv6.addresses "2019:ffff::100/64" ipv6.method manual
## 重启
[root@rhel1 Desktop]# nmcli connection up ipv4-ipv6
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/10)
## 查看
[root@rhel1 Desktop]# ip addr
4: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:fb:7d:19 brd ff:ff:ff:ff:ff:ff
inet 192.168.22.10/24 brd 192.168.22.255 scope global eno16777736
valid_lft forever preferred_lft forever
inet6 2019:ffff::100/64 scope global
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fefb:7d19/64 scope link
valid_lft forever preferred_lft forever
## 物理机ping一下
C:\Users\kanewang>ping -6 2019:ffff::100
Pinging 2019:ffff::100 with 32 bytes of data:
Reply from 2019:ffff::100: time=10ms
Reply from 2019:ffff::100: time<1ms
Reply from 2019:ffff::100: time=1ms
Reply from 2019:ffff::100: time<1ms
Ping statistics for 2019:ffff::100:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 10ms, Average = 2ms
- 第二台设备同样操作
IP是 2019:ffff::101
## 查看
[root@rhel2 ~]# ip addr
8: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:10:6a:95 brd ff:ff:ff:ff:ff:ff
inet 192.168.22.11/24 brd 192.168.22.255 scope global eno16777736
valid_lft forever preferred_lft forever
inet6 2019:ffff::101/128 scope global
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe10:6a95/64 scope link
valid_lft forever preferred_lft forever
## 物理机 ping
C:\Users\kanewang>ping -6 2019:ffff::101
Pinging 2019:ffff::101 with 32 bytes of data:
Reply from 2019:ffff::101: time=25ms
Reply from 2019:ffff::101: time<1ms
Reply from 2019:ffff::101: time<1ms
Reply from 2019:ffff::101: time<1ms
Ping statistics for 2019:ffff::101:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 25ms, Average = 6ms
## 第一个设备 ping 一下
[root@rhel1 Desktop]# ping6 2019:ffff::101
PING 2019:ffff::101(2019:ffff::101) 56 data bytes
64 bytes from 2019:ffff::101: icmp_seq=1 ttl=64 time=4.36 ms
64 bytes from 2019:ffff::101: icmp_seq=2 ttl=64 time=11.9 ms
^C
--- 2019:ffff::101 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1003ms
rtt min/avg/max/mdev = 4.364/8.157/11.951/3.794 ms
注意
- 设置
ip
时, 后面跟的子网前缀的长度,一定要与字码掩码对应上。 ipv4.method manual
,ipv6.method manual
在修改connection
时最好都加上。
配置域名访问
- 在虚拟机上设置域名
## 虚拟机1
[root@rhel1 Desktop]# hostname rhel1.node.com
[root@rhel1 Desktop]# hostnamectl set-hostname rhel1.node.com
## 虚拟机2
[root@rhel2 Desktop]# hostname rhel2.node.com
[root@rhel2 Desktop]# hostnamectl set-hostname rhel2.node.com
- 更改
/etc/hosts
[root@rhel1 Desktop]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.22.11 rhel2.node.com
[root@rhel2 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
2019:ffff::100 rhel1.node.com
## 配置 IPV4 与 IPV6地址都是可以的
拓展路由转发
拓扑图
最终实现目标:
- 物理机使用 网卡
VMnet11
可以SSH
到三台虚拟机上 RHEL1
与RHEL2
之间通过VMnet12
连接RHEL2
与RHEL3
之间通过VMnet13
连接RHEL1
可以直接访问到RHEL3
操作
注:做这个实验的时候,删除了所有网卡。三台虚机都增加了VMnet11、VMnet12、WMnet13
三块网卡,包括网卡的顺序都相同。
# 保证 虚拟机的网卡号与正真网卡一一匹配
VMnet11->eno16777736
VMnet12->eno33554992
VMnet13->eno50332216
关于网关设置
实现上面的需求,是把RHEL2
当做路由转发,所以RHEL1-RHEL2
连接 RHEL1
的网关必须是RHEL2
,RHEL2-RHEL3
连接RHEL3
的网关也必须是RHEL2
重新配置一下网络
物理机
通过三台虚拟机的第一块网卡VMnet11
连接虚拟机
物理机 ipv4 192.168.143.1 ipv6 2019:ac18::1
RHEL1 ipv4 192.168.143.10 ipv6 2019:ac18::100
RHEL2 ipv4 192.168.143.11 ipv6 2019:ac18::101
RHEL3 ipv4 192.168.143.12 ipv6 2019:ac18::102
命令
[root@rhel1 Desktop]# nmcli connection add con-name control_connect ifname eno16777736 autoconnect yes type ethernet ip4 192.168.143.10/24 gw4 192.168.143.1 ip6 2019:ac18::100/64 gw6 2019:ac18::1
[root@rhel2 Desktop]# nmcli connection add con-name control_connect ifname eno16777736 autoconnect yes type ethernet ip4 192.168.143.11/24 gw4 192.168.143.1 ip6 2019:ac18::101/64 gw6 2019:ac18::1
[root@rhel3 Desktop]# nmcli connection add con-name control_connect ifname eno16777736 autoconnect yes type ethernet ip4 192.168.143.12/24 gw4 192.168.143.1 ip6 2019:ac18::102/64 gw6 2019:ac18::1
- 虚拟机
RHEL1
与RHEL2
通过他们的第二块网卡VMnet12
进行连接
RHEL1 ipv4 192.168.27.10 ipv6 2019:ac18:1::100
RHEL1 gw4 192.168.27.11 gw6 2019:ac18:1::101 # 网关配置成RHEL2的
RHEL2 ipv4 192.168.27.11 ipv6 2019:ac18:1::101
[root@rhel1 Desktop]# nmcli connection add con-name connection12 ifname eno33554992 autoconnect yes type ethernet ip4 192.168.140.10/24 gw4 192.168.140.11 ip6 2019:ac18:1::100/64 gw6 2019:ac18:1::101
[root@rhel2 ~]# nmcli connection add con-name connection12 ifname eno33554992 autoconnect yes type ethernet ip4 192.168.140.11/24 ip6 2019:ac18:1::101/64
- 虚拟机
RHEL2
与RHEL3
通过他们的第三块网卡VMnet13
进行连接
RHEL3 ipv4 192.168.245.10 ipv6 2019:ac18:2::100
RHEL3 gw4 192.168.245.11 gw6 2019:ac18:2::101 # 网关配置成RHEL2的
RHEL2 ipv4 192.168.245.11 ipv6 2019:ac18:2::101
命令
[root@rhel2 ~]# nmcli connection add con-name connection23 ifname eno50332216 autoconnect yes type ethernet ip4 192.168.245.11/24 ip6 2019:ac18:2::101/64
[root@rhel3 ~]# nmcli connection add con-name connection23 ifname eno50332216 autoconnect yes type ethernet ip4 192.168.245.10/24 gw4 192.168.245.11 ip6 2019:ac18:2::100/64 gw6 2019:ac18:2::101
- 在
RHEL2
上开启IPV4
与IPV6
进行路由转发,并开启防火墙的masquerade
## 临时开启 ipv6转发
echo 1 > /proc/sys/net/ipv6/conf/all/forwarding
## 临时开启 ipv4转发
echo 1 > /proc/sys/net/ipv4/conf/all/forwarding
## 永久开启 ipv4转发
vim /etc/sysctl.conf # 增加下面的行
net.ipv4.ip_forward=1
[root@rhel2 ~]# firewall-cmd --add-masquerade
[root@rhel2 ~]# firewall-cmd --add-masquerade --permanent
注:`masquerade` 地址伪装,算是snat中的一种特例,可以实现自动化的snat。
结果
# IPV4
[root@rhel1 Desktop]# ping 192.168.245.10
PING 192.168.245.10 (192.168.245.10) 56(84) bytes of data.
64 bytes from 192.168.245.10: icmp_seq=1 ttl=63 time=8.52 ms
^C
--- 192.168.245.10 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 8.525/8.525/8.525/0.000 ms
# IPV6
[root@rhel1 Desktop]# ping6 2019:ac18:2::101
PING 2019:ac18:2::101(2019:ac18:2::101) 56 data bytes
64 bytes from 2019:ac18:2::101: icmp_seq=1 ttl=64 time=2.64 ms
64 bytes from 2019:ac18:2::101: icmp_seq=2 ttl=64 time=3.34 ms
^C
--- 2019:ac18:2::101 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1003ms
rtt min/avg/max/mdev = 2.649/2.996/3.344/0.351 ms
红帽学习笔记[RHCE]网络配置与路由转发的更多相关文章
- FC网络学习笔记02 -网络配置方法
随着新一代飞机的综合化航电系统对通信需求的不断提高,传统的ARINC429.1553B总线的传输速率分别只有100Kbps和1Mbps,其带宽已远远不 论文联盟 http://Www.LWlm.cOm ...
- 红帽学习笔记[RHCE]OpenLDAP 服务端与客户端配置
目录 OpenLDAP 服务端与客户端配置 关于LDIF 一个LDIF基本结构一个条目 属性 Object的类型 服务端 安装 生成证书 生成默认数据 修改基本的配置 导入基础数据 关于ldif的格式 ...
- ASP.NET MVC 学习笔记-7.自定义配置信息 ASP.NET MVC 学习笔记-6.异步控制器 ASP.NET MVC 学习笔记-5.Controller与View的数据传递 ASP.NET MVC 学习笔记-4.ASP.NET MVC中Ajax的应用 ASP.NET MVC 学习笔记-3.面向对象设计原则
ASP.NET MVC 学习笔记-7.自定义配置信息 ASP.NET程序中的web.config文件中,在appSettings这个配置节中能够保存一些配置,比如, 1 <appSettin ...
- 红帽学习笔记[RHCSA] 第二周
目录 红帽学习笔记[RHCSA]第二周 环境 第七课[网络配置相关] 在Vmware中添加网卡 将网卡添加到虚拟机上 关于网卡命名规则 配置网络 网络配置命令总结 更改hostname 关于SSH的一 ...
- thinkphp学习笔记10—看不懂的路由规则
原文:thinkphp学习笔记10-看不懂的路由规则 路由这部分貌似在实际工作中没有怎么设计过,只是在用默认的设置,在手册里面看到部分,艰涩难懂. 1.路由定义 要使用路由功能需要支持PATH_INF ...
- 学习笔记_J2EE_SpringMVC_03_注解配置_@RequestMapping用法
@RequestMappingde的用法 摘要: 主要介绍注解@RequestMapping的用法 一.@RequestMapping 简介 在Spring MVC 中使用 @RequestMappi ...
- python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容
python3.4学习笔记(十七) 网络爬虫使用Beautifulsoup4抓取内容 Beautiful Soup 是用Python写的一个HTML/XML的解析器,它可以很好的处理不规范标记并生成剖 ...
- python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息,抓取政府网新闻内容
python3.4学习笔记(十三) 网络爬虫实例代码,使用pyspider抓取多牛投资吧里面的文章信息PySpider:一个国人编写的强大的网络爬虫系统并带有强大的WebUI,采用Python语言编写 ...
- linux的视频学习4(网络配置和rpm)
linux的视频学习: 1.网络配置的三种方式的介绍. 第一种方式: setup 命令--选择network configuration-->配置固定ip(tab键)和自动分配IP(长空格) / ...
随机推荐
- vue 详情跳转至列表页 实现列表页缓存
甲爸爸提了一个需求,希望公众号内的商城能够像app一样,从商品详情页跳转至列表页及其他列表页时,可以实现列表页缓存(数据不刷新.位置固定到之前点的商品的位置) 本来想着scrollBehavior应该 ...
- Vulnhub靶场渗透练习(三) bulldog
拿到靶场后先对ip进行扫描 获取ip 和端口 针对项目路径爆破 获取两个有用文件 http://192.168.18.144/dev/ dev,admin 更具dev 发现他们用到框架和语言 找到一 ...
- 从零开始搭建Electron+Vue+Webpack项目框架,一套代码,同时构建客户端、web端(一)
摘要:随着前端技术的飞速发展,越来越多的技术领域开始被前端工程师踏足.从NodeJs问世至今,各种前端工具脚手架.服务端框架层出不穷,“全栈工程师”对于前端开发者来说,再也不只是说说而已.在NodeJ ...
- 使用Java8 Stream API对Map按键或值进行排序
一.什么是Java 8 Stream 使用Java 8 Streams,我们可以按键和按值对映射进行排序.下面是它的工作原理: 将Map或List等集合类对象转换为Stream对象 使用Streams ...
- 【xinsir】分享一个查找文件的脚手架
program.command('find <name>').action(name => { if (name) { inquirer .prompt([ { type: 'inp ...
- Android_Fragment
(一) Faragment有自己的生命周期 Fragment依赖于Activity Fragmen通过getActivity()可以获取所在Activity:Activity通过FragmentMan ...
- Spring Boot 如何给微信公众号返回消息
hello 各位小伙伴,今天我们来继续学习如何通过 Spring Boot 开发微信公众号.还没阅读过上篇文章的小伙伴建议先看看上文,有助于理解本文: Spring Boot 开发微信公众号后台 上篇 ...
- 子树问题(DP)
这题显然是DP 首先,\(dp[i][j]\)表示树深度小于等于i,树的大小为j的有根树的数量$ 可以循环枚举根节点编号次大的子树的大小k. \(dp[i][j]=\sum^{j-1}_{k=1}dp ...
- 关于Ubuntu10.04磁盘空间不足的问题
最近由于项目问题,需要自己写驱动,但是驱动知识太少,开始下了个内核自己玩玩,没想到的是内核下好了,Ubuntu待机后却登录不了了,重启了好几次也不行,而且颜色是蓝色,右上角还提示:Install pr ...
- [考试反思]1018csp-s模拟测试78(lrd day2) :规律
zkt没素质果然考炸了! 但是他考炸了和我一个分 这场的状态是真的不好,T3比较简单但没有做,一直干T2结果还是跪了 T1的哈希写挂了,模数比int大了结果一乘就炸long long了. 调了一个小时 ...