一个Linux网络问题记录

导语

今天在学习的时候,碰到了Linux网络的一个问题,在网上查询资料,查了半天都没有解决,所以记录下来,如果有读者知道的话,还请不吝赐教。

1问题描述

今天在学习的时候,碰到了Linux网络的一个问题,问题的具体情况如下:

从图中我们可以看到,网络的图标上有一个小红叉,点击小红叉,显示networking disabled,提示网络不可达,然后我就随便ping了一下,奇怪的事情发生了,居然可以ping通www.baidu.com,为什么会出现这个问题呢,图标显示网络不通,但是确可以连接外网,虽然不影响使用,但是还是想把这个问题搞明白。于是查了查Linux相关的资料,整理如下。

2分析过程

首先,进入/etc/sysconfig/network-scripts,可以看到如下文件:

打开ifcfg-eth0可以看到

里面都是网络的相关参数,下面的表格详细解释上面的各项参数:

这些参数看着没有什么问题,于是又重新跑了一下ifconfig命令,如下:

显示似乎是正常的,没有什么问题,这个时候,发现上面的ifconfig显示的是eth3,而在/etc/sysconfig/network-scripts目录中根本没有发现eth3网卡,该文件夹下所有的文件目录如下:

于是问题又被转化为这个eth3网卡到底是怎么来的?在网上查了资料,得到了如下的解释:

VMware中克隆虚拟机是经常的事情,当我们进行系统克隆的时候,VMware会为新产生的虚拟机配置一个与原始虚拟机网卡MAC地址不同的网卡。对于CentOS这样的Linux系统,会把运行时的网卡MAC地址记入到 /etc/udev/rules.d/70-persistent-net.rules 文件中。这样克隆好的新系统里也保存了这个记录。当新系统启动时,由于vmware已经为其配置了不同的MAC地址,因此系统会在启动扫描硬件时把这个新的MAC地址的网卡当做是eth1,并且增加记入上述文件中。而此时配置文件里的 /etc/sysconfig/network-scripts/ifcfg-eth0 里记录的还是原来的MAC地址,而这个MAC地址在新系统里是不存在的,所以无法启动。

于是我打开这个文件:

vim /etc/udev/rules.d/70-persistent-net.rules

看到了如下所示的结果:

这就很好理解了,原因是我这个系统已经克隆了好几次,每次新系统都是在老系统的基础上克隆得到的,所以网卡的编号已经到了eth3了,再来看eth3的mac地址,发现和ifconfig查到的结果一致,这就能解释为什么ifconfig的结果了。

今天看了很多相关的博客,但是问题还是没有得到解决,暂时先记录下来,后面会继续跟进这个问题。不过总算是有点收获,知道了克隆时候vmware虚拟机的对mac地址的处理,对ifcfg文件中各个参数做了一些调研,还是值得借鉴的。

本文分享自微信公众号 - DBA随笔(gh_acc2bbc0d447)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-10-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏小詹同学

会用python把linux命令写一遍的人,进大厂有多容易?

看过这篇《2000字谏言,给那些想学Python的人,建议收藏后细看!》的读者应该都对一个命令有点印象吧?没错,就是 linux 中经常会用到的 ls 命令。

12230
来自专栏运维之美

你真的知道如何正确清除 DNS 缓存吗?( 附全平台详细教程 )

DNS 缓存是一个临时数据库,用于存储有关以前的 DNS 查找的信息。换句话说,每当你访问网站时,你的操作系统和网络浏览器都会保留该域和相应 IP 地址的记录。...

22920
来自专栏小白帽学习之路

星球优秀成员作品 | 『VulnHub系列』symfonos: 3-Walkthrough

target设置为http://192.168.0.110/尝试了不同的字典,发现的结果只有index.html和/gate

13520
来自专栏JAVAandPython君

人生苦短,我用PyCharm

本文假设读者熟悉 Python 开发,且计算机中已安装某个版本的 Python。该教程将使用 Python 3.6 版本,屏幕截图和 demo 均来自 macO...

12720
来自专栏运维之美

Linux 曝出严重安全漏洞,受限用户亦可提权至 Root 身份运行任意命令!(内附解决方案)

作为 Linux 中最常使用的重要实用程序之一,sudo 几乎安装在每一款 UNIX 和 Linux 发行版上的,以便用户调用和运行核心命令。

12820
来自专栏运维之美

Linux 下 4 种实时监控日志文件的方法,你都会用吗?

在 Linux 下如何才能实时查看日志内容呢?有很多工具可以帮助我们在文件持续修改的同时输出文件内容,最常用的莫过于 tail 命令 了。

15420
来自专栏数据分析1480

Python 最强 IDE 详细使用指南!

机器之心之前也没系统地介绍过 PyCharm,怎样配置环境、怎样 DeBug、怎样同步 GitHub 等等可能都是通过经验或者摸索学会的。在本文中,我们并不会提...

10020
来自专栏Java那些事

Git原理入门解析

Git 是当前流行的分布式版本控制管理工具,最初由 Linux Torvalds (Linux 之父) 创造,于 2005 年发布。

7820
来自专栏MYSQL轻松学

MySQL高可用工具—Orchestrator初识

Orchestrator是一款开源的MySQL复制拓扑管理工具,采用go语言编写,支持MySQL主从复制拓扑关系的调整、支持MySQL主库故障自动切换、手动主从...

16020
来自专栏Java帮帮-微信公众号-技术文章全总结

Linux 用户注意了:Linux Sudo 被曝漏洞

近日,安全专家发现 Sudo 中出现一个新漏洞,该漏洞是 sudo 安全策略绕过问题,可导致恶意用户或程序在目标 Linux 系统上以 root 身份执行任意命...

8920

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励