zoukankan      html  css  js  c++  java
  • 为CentOS 7配置静态IP地址及遇到的问题解决策略

    为CentOS 7配置静态IP地址及遇到的问题解决策略

    1. 为CentOS 7配置静态IP地址的两种方法

    (原文地址:http://www.linuxidc.com/Linux/2014-10/107789.htm)

    使用下面的命令来验证网络管理器服务的状态:

    1. $ systemctl status NetworkManager.service

    运行以下命令来检查受网络管理器管理的网络接口:

    1. $ nmcli dev status

    如果某个接口的nmcli的输出结果是“已连接”(如本例中的enp0s3),这就是说该接口受网络管理器管理。你可以轻易地为某个特定接口禁用网络管理器,以便你可以自己为它配置一个静态IP地址。

    下面将介绍CentOS 7上为网络接口配置静态IP地址的两种方式,在例子中我们将对名为enp0s3的网络接口进行配置。

    1.1 不使用网络管理配置静态IP地址

    进入/etc/sysconfig/network-scripts目录,找到该接口的配置文件(ifcfg-enp0s3)。如果没有,请创建一个。

    打开配置文件并编辑以下变量:

    在上图中,“NM_CONTROLLED=no”表示该接口将通过该配置文件进行设置,而不是通过网络管理器进行管理。“ONBOOT=yes”告诉我们,系统将在启动时开启该接口。

    保存修改并使用以下命令来重启网络服务:

    1. # systemctl restart network.service

    现在验证接口是否配置正确:

    1. # ip add

    1.2 使用网络管理器配置静态IP地址

    如果你想要使用网络管理器来管理该接口,你可以使用nmtui(网络管理器文本用户界面),它提供了在终端环境中配置配置网络管理器的方式。

    在使用nmtui之前,首先要在/etc/sysconfig/network-scripts/ifcfg-enp0s3中设置“NM_CONTROLLED=yes”。

    现在,请按以下方式安装nmtui。

    1. # yum install NetworkManager-tui

    然后继续去编辑enp0s3接口的网络管理器配置:

    1. # nmtui edit enp0s3

    在下面的屏幕中,我们可以手动输入与/etc/sysconfig/network-scripts/ifcfg-enp0s3中所包含的内容相同的信息。

    使用箭头键在屏幕中导航,按回车选择值列表中的内容(或填入想要的内容),最后点击屏幕底部右侧的确定按钮。

    最后,重启网络服务。

    1. # systemctl restart network.service

    2. 遇到的问题及解决策略

    当我按照上述方法去配置静态IP时发现了几个问题,总的来说上述方法正确,但有几点可能会出现问题,在此我写了出来,希望遇到相关问题的朋友可以注意一下。

    2.1 当我按照上述1.1配置时发现ifcfg-enp0s3文件当中没有IPADDR,NETMASK等大部分选项时怎么办?

           策略:这是由于你的IP配置可能设置成了自动获取。你可以用1.2中的方法来配置。

    2.2 按照上述方法配置后发现重启网络服务总是失败出现错 误“Job for network.service failed. See 'systemctl status network.service' and 'journalctl -xn' for deta”怎么办?

        策略:使用systemctl status network查看服务状态,得到如下错误信息:

    # systemctl status network
    network.service - LSB: Bring up/downnetworking
      Loaded: loaded (/etc/rc.d/init.d/network)
      Active: failed (Result: exit-code) since Sun 2014-11-23 22:09:08 EST;15min ago
     Process: 597 ExecStart=/etc/rc.d/init.d/network start (code=exited,status=1/FAILURE)
     
    Nov 23 22:09:07 hdcoe02 network[597]:Bringing up loopback interface:  Couldnot load file '/etc/sysconfig/network-scripts/ifcfg-lo'
    Nov 23 22:09:07 hdcoe02 network[597]:Could not load file '/etc/sysconfig/network-scripts/ifcfg-lo'
    Nov 23 22:09:08 hdcoe02 network[597]:Could not load file '/etc/sysconfig/network-scripts/ifcfg-lo'
    Nov 23 22:09:08 hdcoe02 network[597]:Could not load file '/etc/sysconfig/network-scripts/ifcfg-lo'
    Nov 23 22:09:08 hdcoe02 network[597]:[  OK ]
    Nov 23 22:09:08 hdcoe02 network[597]:Bringing up interface enp0s25:  Error:Connection activation failed: Connection 'enp0s25' is not available on thedevice enp0s25 at this time.
    Nov 23 22:09:08 hdcoe02 network[597]:[FAILED]
    Nov 23 22:09:08 hdcoe02 systemd[1]:network.service: control process exited, code=exited status=1
    Nov 23 22:09:08 hdcoe02 systemd[1]: Failedto start LSB: Bring up/down networking.
    Nov 23 22:09:08 hdcoe02 systemd[1]: Unitnetwork.service entered failed state.

    从错误提示“Error: no device found for connection 'eth0'”可以确定是配置文件eth0的问题,打开查看/etc/sysconfig/network-scripts/ifcfg-eth0文件发现其中的MAC地址和ifconfig命令输出的MAC地址不一样,具体如下所示:

    [root@openstack ~]# cat /etc/sysconfig/network-scripts/ifcfg-enp0s3
    HWADDR=1A:E9:47:A5:75:C8
    TYPE=Ethernet
    BOOTPROTO=static
    DEFROUTE=yes
    PEERDNS=yes
    PEERROUTES=yes
    IPV4_FAILURE_FATAL=no
    IPV6INIT=yes
    IPV6_AUTOCONF=yes
    IPV6_DEFROUTE=yes
    IPV6_PEERDNS=yes
    IPV6_PEERROUTES=yes
    IPV6_FAILURE_FATAL=no
    IPADDR=192.168.1.79
    PREFIX=24
    GATEWAY=192.168.1.1
    DNS1=192.168.1.1
    DNS2=8.8.8.8
    NAME=eth0
    UUID=ba670f0c-201a-483b-8379-c8c72c03ab27
    ONBOOT=yes
    [root@openstack ~]# ifconfig 
    enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet 192.168.1.79  netmask 255.255.255.0  broadcast 192.168.1.255
            inet6 fe80::8081:a6ff:fe9d:5887  prefixlen 64  scopeid 0x20<link>
            ether 82:81:a6:9d:58:87  txqueuelen 1000  (Ethernet)
            RX packets 3426  bytes 394042 (384.8 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 57  bytes 9578 (9.3 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

    所以只需将ifcfg-enp0s3中的HWADDR变量值改为ifconfig命令里显示的MAC地址即可。

    2.3 windows PING不通VM下的CENTOS虚拟机?

        策略:原因:window的IP是192.168.1.106,而虚拟机的CENTOS的IP是192.168.0.11。不在同一个网段,把虚拟机的CENTOS的IP设置成192.168.1.X (X代表0-255的数字。)就可以了。

    3. IP配置中的几个单词的含义

    1.       DEVICE=eth0//指出设备名称

    2.       ONBOOT=yes//是否启动应用

    3.       BOOTPROTO=static//启动类型 静态 (默认dhcp)

    4.       IPADDR=192.168.0.77//IP地址

    5.       NETMASK=255.255.255.0//子网掩码

    6.       GATEWAY=192.168.0.1//网关

     以上是我配置IP时所遇到的问题以及通过搜索大量资料所找到的解决方案,并不能保证这种问题都可以这样解决。

  • 相关阅读:
    @终极解密输入网址按回车到底发生了什么
    jgitflow-maven-plugin报错:The authenticity of host can't be established.
    java log4j2日志行号不显示问题
    Prometheus监控之grafana常用模板编号记录
    DM数据守护
    使用IntelliJ IDEA 配置Maven(入门)
    IntelliJ IDEA lombok插件的安装和使用
    idea svn连接https报错问题: E230001: Server SSL certificate verification failed: certificate issued
    SVN安装后,右键不显示SVN菜单项
    IntelliJ IDEA怎么配置svn,集成svn方法
  • 原文地址:https://www.cnblogs.com/hxphp/p/7071077.html
Copyright © 2011-2022 走看看