QA RockyLinux8.8、双网卡、ping 8.8.8.8失败。

embedded/2024/11/22 15:40:14/

关键字: 仅主机网络、NAT网络路由优先级nmcli


环境:

RockyLinux8.8最小版本安装,网卡配置如下所示:
  ens160: 连仅主机(用于本地SSH登陆) 10.0.0.0/24
  ens224: 连NAT(有于上外网)、10.0.2.0/24(网关:10.0.2.2)

A: 解决思路

[root@qzm999 ~]# ip route get 8.8.8.8
8.8.8.8 via 10.0.0.1 dev ens160 src 10.0.0.70 uid 0  #表示,当前访问8.8.8.8,走的是10.0.0.70网卡,通过10.0.0.1网关走外网,但是10.0.0.0是一个仅主机网络,不能访问外网,所以导致ping 8.8.8.8失败

问题找到了,我再按下面步骤尝试解决

1.  查看当前所有路由  

[root@qzm999 ~]# ip route list
default via 10.0.0.1 dev ens160 proto static metric 100                         #优先级比101高
default via 10.0.2.2 dev ens224 proto dhcp src 10.0.2.128 metric 101  #优先级比100低
10.0.0.0/24 dev ens160 proto kernel scope link src 10.0.0.70 metric 100 
10.0.2.0/24 dev ens224 proto kernel scope link src 10.0.2.128 metric 101 

从上面路由列表反映的信息知道问题所在了(对吧?!),下面我只要把连接NAT网络的ens224网卡的优先级提高到高于ens160(连仅主机网络)就解决了。

2. 可以改ifcfg-ensXXX文件或者用命令nmcli connection modify ens160 ipv4.route-metricXXX修改路由优先级

2.1改ifcfg-ensXXX文件(2.1和2.2二选一)

vim /etc/sysconfig/network-scripts/ifcfg-ensXXX

nmcli con reload              #reload all connection files from disk.(ifcfg-ensXXX.....)
nmcli con down ens160  #需要关然后重开网卡才会生效
nmcli con up ens160      #需要关然后重开网卡才会生效

2.2 nmcli命令(2.1和2.2二选一)

nmcli connection modify ens160 ipv4.route-metric 199   #199是优先级值,优先级越高,值越小

注意:nmcli修改网卡配置后,并不需要调用“nmcli con reload” 命令
nmcli con down ens160   #需要关然后重开网卡才会生效
nmcli con up  ens160      #需要关然后重开网卡才会生效

3.查看服务器(VM/ECS)路由配置

[root@qzm999 ~]# nmcli
ens224: connected to ens224
        "VMware VMXNET3"
        ethernet (vmxnet3), 00:0C:29:97:38:A1, hw, mtu 1500
        ip4 default
        inet4 10.0.2.128/24
        route4 10.0.2.0/24 metric 101  #生效了
        route4 default via 10.0.2.2 metric 101
        inet6 fe80::ccf4:b622:3eb8:4d0b/64
        route6 fe80::/64 metric 1024

ens160: connected to ens160
        "VMware VMXNET3"
        ethernet (vmxnet3), 00:0C:29:97:38:97, hw, mtu 1500
        inet4 10.0.0.70/24
        route4 10.0.0.0/24 metric 200  #生效了
        route4 default via 10.0.0.1 metric 200
        inet6 fe80::20c:29ff:fe97:3897/64
        route6 fe80::/64 metric 1024
从当前网卡的配置可知,现在ens224的路由优先级比ens160高(metric的数值越小优先级越高)  

4. 在VM中再次ping互联网的8.8.8.8 DNS服务器

[root@qzm999 ~]# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=128 time=69.5 ms 问题解决
 


http://www.ppmy.cn/embedded/139651.html

相关文章

translation1

农历(the lunar calendar)起源于数千年前的中国,根据太阳和月亮的运行规律制定。长期以来,农历在农业生产和人们日常生活中发挥着重要作用。古人依据农历记录日期、安排农活,以便最有效地利用自然资源和气候条件&#…

AI社媒引流工具:解锁智能化营销的新未来

在数字化浪潮的推动下,社交媒体成为品牌营销的主战场。然而,面对海量的用户数据和日益复杂的运营需求,传统营销方法显得力不从心。AI社媒引流王应运而生,帮助企业在多平台中精准触达目标用户,提升营销效率和效果。 1.…

项目实战(webshop)

一、搭建靶场webshop(www.example1.com) 二、信息收集 1、获取IP winR→cmd→ping www.example1.com→显示出ip(192.168.51.128) 注:TTL为IP包的生存时间,拿到TTL我们可以大概的判断一下目标机器的操作系统,但不是很准确,因为…

FastAdmin接口传参获取获取不同语言的相应。

1.在application\config.php 里开启多语言 // 是否开启多语言lang_switch_on > true,// 默认全局过滤方法 用逗号分隔多个default_filter > ,// 默认语言default_lang > zh-cn,// 允许的语言列表allow_lang_list > [zh-cn, en], …

【云原生后端开发流程及详细教程】

云原生后端开发流程及详细教程 一、前期规划二、开发阶段三、部署阶段四、监控与优化一、前期规划 需求分析 明确后端要实现的功能。例如,构建一个简单的待办事项(To - Do)列表应用的后端,需要支持用户创建、读取、更新和删除(CRUD)待办事项。功能包括用户注册/登录、任务…

Objective-C 1.0和2.0有什么区别?

Objective-C ObjC比较小众,在1980年左右由Stepstone公司的Brad Cox和Tom Love发明。后来NeXT公司获得ObjC语言使用权,再后来到1996年NeXT被苹果公司收购也变成苹果公司使用,Mac市场占有率本身就不高,ObjC没有太多程序员。在移动互…

ModuleNotFoundError: No module named ‘distutils.msvccompiler‘ 报错的解决

报错 在conda 环境安装 numpy 时,出现报错 ModuleNotFoundError: No module named distutils.msvccompiler 解决 Python 版本过高导致的,降低版本到 Python 3.8 conda install python3.8即可解决。

C# .Net Core通过StreamLoad向Doris写入CSV数据

以下代码可以只关注StreamLoad具体实现。 1.创建StreamLoad返回值Model public class StreamLoadResponse {public long TxnId { get; set; }public string Label { get; set; }public string Comment { get; set; }public string TwoPhaseCommit { get; set; }public string…