Linux 网络配置情况 总体梳理

Stella981
• 阅读 436

题记:

Linux网络配置这个问题。常常在配置,但仍然常出错。希望这次做一个整体梳理,能够解决日后遇见的大体问题。

在搭建Hadoop集群的过程中,由于一次意外关机,之后启动集群中的三台Linux虚拟机master、node1、node2,网络连接失败。三台虚拟机之间互相都ping不同,也ping不同外网和网关。只能ping通localhost和127.0.0.1.

解决这个问题的过程很复杂,它并不仅仅是因为网络配置出错的原因。最后,这个问题是因为虚拟软件VMware workstation可能丢失了一些配置文件导致的。

本篇日志所涉及到的问题,它的软件配置情况为:

本机系统:win7

虚拟机软件:VMware workstation

虚拟机系统:redhat

网络配置情况:,连接方式,NAT、手动指定IP

本篇日志表达的中心思想:

重新梳理,在Linux网络配置的过程中涉及到的各个网络配置文件,并说明网络配置过程中需要注意的几个关键点。

进入正题:

1、首先我将目前正常Linux网络配置环境中,相关的网络配置信息如下列出:

本机windows 网络配置情况:

VM1:

Linux 网络配置情况 总体梳理

图1

VM8:

Linux 网络配置情况 总体梳理

图2

Linux虚拟机网络配置情况:

虚拟网络编辑器:

VM0:

Linux 网络配置情况 总体梳理

图3

VM1:

Linux 网络配置情况 总体梳理

图4

VM8:

Linux 网络配置情况 总体梳理

图5

Linux 虚拟机IP网络配置:(/etc/sysconfig/network-scripts/ifcfg-eth0网络配置文件)

Linux 网络配置情况 总体梳理

图6

网卡配置文件:(/etc/udev/rules.d/70-persistent-net.rules)

Linux 网络配置情况 总体梳理

图7

DNS配置文件:(/etc/resolv.conf)

Linux 网络配置情况 总体梳理

图8

2、其中未搞明白的相关配置情况如下:

1)、虚拟网络编辑器中,图3 VM0

图3 VM0的配置,我不知道它应当在什么情况下起作用。但,从表面上看起来,VM0的相关配置在我的这次网络配置中斌未起作用。

2)、虚拟网络编辑器,图4 VM1

图4 VM1中子网IP,似乎在我的网络配置中也未起作用。

3)、本机Windows中,图1 VM1的IP配置,似乎在我的网络配置中也未起作用。

4)、本机Windows,IP配置似乎与我的网络配置也没有相关关系。

以上中情况,因为和我的网络配置似乎没有相关关系,所以我也没有做任何修改。也未找出它们之间有什么联系。所以可以完全不管。

3、下面开始说明每个网络配置文件的对应关系

以图6:/etc/sysconfig/network-scripts/ifcfg-eth0网络配置文件 为入口开始说明

1)、ifcfg-eth0配置文件具体内容如下:

DEVICE=eth0    =》     网卡接口名称,与ifcfg-eth0相对应,和网卡配置文件/etc/udev/rules.d/70-persistent-net.rules相关联

BOOTPROTO=none    =》    启用地址协议 --static:静态协议 --bootp协议 --dhcp协议

HWADDR=00:0C:29:95:8D:5E    =》    网卡地址即MAC地址(HWADDR值取决于图7(网卡配置文件/etc/udev/rules.d/70-persistent-net.rules)中NAME="eth0"的网卡,它的ATTR{address}值。它们俩必须对应相等。)

IPADDR=192.168.232.134    =》   网卡 ip地址(它ip地址网段232,取决于图5 VM8中子网IP的网段。它们俩对应相等。在这儿都是232网段。)

NETMASK=255.255.255.0    =》    网卡网络地址

ONBOOT=yes    =》    系统启动时是否自动加载

GATEWAY=192.168.232.4    =》    网卡网关地址(网关地址取决于图5 VM8中网关IP,他们对应相等)

ARPCHECK=no    =》    解决“eth0: Determining if ip address 192.168.232.1”问题
DNS1=202.96.134.33    =》    网卡DNS地址(之后/etc/resolv.conf文件中自动生成的DNS值,就是这儿的DNS1的值)

修改完成后,保存。并写入命令查看IP配置情况。

2)、虚拟网络编辑器中VM8的子网IP段需要和Windows本机中VM8的子网IP在同一个段。我们的配置中都在232段。

3)、网络配置文件ifcfg-eth0中的GATEWAY与虚拟网络编辑器中VM8的网关IP对应相等。

4)、DNS配置文件/etc/resolv.conf的内容由ifcfg-eth0中的DNS1自动生成。

5)、关闭NetworkManager相关服务

4、查看相关IP配置情况

1)、保存IP配置后重启网络配置

#重启网卡

service network restart

2)、查看DNS配置文件

#DNS配置文件

vi /etc/resolv.conf

# Generated by NetworkManager
nameserver 202.96.134.33

注意:DNS配置文件中信息不是由我们手动写入的,而是由ifcfg-eth0文件的DNS1配置信息,在service network restart重启网卡后自动生成的。

在这儿又引入了另外一个问题:《Linux网络配置 DNS配置信息丢失 可能原因分析

5、Linux网络配置相关命令汇总

参见相关资料:《Linux网络相关配置文件》、《linux下重要的网络配置文件

1)、#修改主机名称

/etc/sysconfig/network  这个文件主要的功能用于,设定默认的GATEWAY,修改主机名称(HOSTNAME),是否启动Network.

2)、#网卡的参数文件

/etc/sysconfig/network-scripts/ifcfg-ethn  这个文件是设定网卡的参数文件,如network,IP,netmask,broadcast,gateway,开机时IP协议的方式(DHCP,static).

3)、#设定DNS的文件.

/etc/resolv.conf   这个是设定DNS的文件.

4)、#记录计算机的IP对应主机的名称或者主机的别名.

/etc/hosts  这个文件可以记录计算机的IP对应主机的名称或者主机的别名.

5)、#查看IP地址参数

ifconfig 查看IP地址参数

6)、#重启网卡

service network restart

7)、#启动eth0网卡

ifup eth0  启动eth0网卡

8)、#关闭eth0网卡

ifdown eth0  关闭eth0网卡

9)、#检查一下网卡是否启用

IP地址配置正确,网络也重启了,但是仍处于中断

检查一下网卡是否启用

mii-tool 命令

/etc/init.d/network status

若没有启动网卡,则ifconfig eth0 up 启动网卡

更多参见:《弹出界面eth0:错误:激活连接失败:device not managed by NetworkManager

点赞
收藏
评论区
推荐文章
blmius blmius
1年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
技术小男生 技术小男生
5个月前
linux环境jdk环境变量配置
1:编辑系统配置文件vi/etc/profile2:按字母键i进入编辑模式,在最底部添加内容:JAVAHOME/opt/jdk1.8.0152CLASSPATH.:$JAVAHOME/lib/dt.jar:$JAVAHOME/lib/tools.jarPATH$JAVAHOME/bin:$PATH3:生效配置
光头强的博客 光头强的博客
5个月前
Java面向对象试题
1、请创建一个Animal动物类,要求有方法eat()方法,方法输出一条语句“吃东西”。创建一个接口A,接口里有一个抽象方法fly()。创建一个Bird类继承Animal类并实现接口A里的方法输出一条有语句“鸟儿飞翔”,重写eat()方法输出一条语句“鸟儿吃虫”。在Test类中向上转型创建b对象,调用eat方法。然后向下转型调用eat()方
刚刚好 刚刚好
5个月前
css问题
1、在IOS中图片不显示(给图片加了圆角或者img没有父级)<div<imgsrc""/</divdiv{width:20px;height:20px;borderradius:20px;overflow:h
小森森 小森森
5个月前
校园表白墙微信小程序V1.0 SayLove -基于微信云开发-一键快速搭建,开箱即用
后续会继续更新,敬请期待2.0全新版本欢迎添加左边的微信一起探讨!项目地址:(https://www.aliyun.com/activity/daily/bestoffer?userCodesskuuw5n)\2.Bug修复更新日历2.情侣脸功能大家不要使用了,现在阿里云的接口已经要收费了(土豪请随意),\\和注意
晴空闲云 晴空闲云
5个月前
css中box-sizing解放盒子实际宽高计算
我们知道传统的盒子模型,如果增加内边距padding和边框border,那么会撑大整个盒子,造成盒子的宽度不好计算,在实务中特别不方便。boxsizing可以设置盒模型的方式,可以很好的设置固定宽高的盒模型。盒子宽高计算假如我们设置如下盒子:宽度和高度均为200px,那么这会这个盒子实际的宽高就都是200px。但是当我们设置这个盒子的边框和内间距的时候,那
艾木酱 艾木酱
5个月前
快速入门|使用MemFire Cloud构建React Native应用程序
MemFireCloud是一款提供云数据库,用户可以创建云数据库,并对数据库进行管理,还可以对数据库进行备份操作。它还提供后端即服务,用户可以在1分钟内新建一个应用,使用自动生成的API和SDK,访问云数据库、对象存储、用户认证与授权等功能,可专
Stella981 Stella981
1年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Wesley13 Wesley13
1年前
MySQL查询按照指定规则排序
1.按照指定(单个)字段排序selectfromtable_nameorderiddesc;2.按照指定(多个)字段排序selectfromtable_nameorderiddesc,statusdesc;3.按照指定字段和规则排序selec
helloworld_28799839 helloworld_28799839
5个月前
常用知识整理
Javascript判断对象是否为空jsObject.keys(myObject).length0经常使用的三元运算我们经常遇到处理表格列状态字段如status的时候可以用到vue