一、出现问题的原因

最近由于linux需要使用外网,发现ping不通地址,经过一番查找分析后发现是DNS服务配置丢失,在这里有两种方法可以解决该问题。

1:你可以手动修改/etc/sysconfig/network-scripts/ifcfg-lo(这是我linux上的网卡,一般来说系统上第一块网卡默认是/etc/sysconfig/network-scripts/ifcfg-eth0)的进行DNS配置,

 使用vim到/etc/sysconfig/network-scripts/ifcfg-lo修改添加如下:

  PEERDNS=no

  DNS1=192.168.1.1

  DNS2=192.168.1.2

然后wq!保存退出,再使用vim指令在/etc/resolv.conf里添加配置(一说resolv.conf是一个link文件会随着ifcfg-eth0里DNS配置自动修改):

  nameserver 192.168.1.1

  nameserver 192.168.1.2

2:使用dhclient指令自动获取ip地址(其实原理是一样的,下面详细介绍第二种方法)

二、问题详解

1:文件说明

  /etc/hosts           hostname对应的IP存档

  /etc/resolv.conf  当需要解析域名时,读取该文件获取DNS 服务器IP

            resolv.conf的关键字主要有四个,分别是:

              nameserver    //定义DNS服务器的IP地址
              domain       //定义本地域名
              search        //定义域名的搜索列表
              sortlist        //对返回的域名进行排序

  /etc/nsswitch.conf   这个档案决定先使用/etc/hosts还是/etc/resolv.conf的设定

  当电脑要访问一个域名时,要将域名翻译成IP地址。
  这个过程通常会先访问/etc/hosts,看本地是否有对应的hostname -- IP记录。
  如果没有就去查询DNS服务器,通过/etc/resolv.conf 得到dns服务器地址

  当在eth接口启用DHCP后,本地resolv.conf文件将被修改,resolv.conf文件中的DNS地址将被改为从DHCP获取到的地址。这种从DHCP获得的DNS即是Peer DNS。                         启用DHCP后即便修改/etc/resolv.conf,不久又恢复成原样。

如何解决这个问题?此时,你得要在 /etc/sysconfig/network-scripts/ifcfg-eth0 等相关档案内,增加一行: PEERDNS=no,然后重新启动网络即可

2:使用dhclient指令自动获取ip地址

dhclient指令的使用:

    语法:dhclient(选项)(参数)
    选项:
      0:指定dhcp客户端监听的端口号;
      -d:总是以前台方式运行程序;
      -q:安静模式,不打印任何错误的提示信息;
      -r:释放ip地址。
   参数:
      网络接口:操作的网络接口
   实例:
      dhclient -r     #释放IP
      dhclient        #获取IP 使用dhclient指令获取ip,在这里需要使用sudo权限进行操作
   
   这里普及一下sudo和权限的操作,sudo权限需要切换到root用户进行授权
  a.你可以vim 进入 /etc/sudoers 找到如下位置进行增加:
  
在后面添加 NOPASSWD 则不需要输入密码

   b.修改文件或目录的权限

     chmod u+-=rwx 文件名或者目录
         g+-=rwx 文件名或者目录
            o+-=rwx 文件名或者目录

      (或用数字授权ugo=》7 5 1 rwx =》4 2 1)
    将sudoer添加写权限: chmod u+w /etc/sudoers 
    追加如下内容:echo "hadoop ALL=(ALL)NOPASSWD;ALL">>/etc/sudoers
    收回写权限:chmod u-w /etc/sudoers
 

dhclient的指令详解见: https://blog.csdn.net/u011857683/article/details/83722466

3:重启网络服务:service network restart

4:查看dns解析情况

三、结果

1:再次ping一个地址:

2:我们再用cat指令查看/etc/resolv.conf 和/etc/sysconfig/network-scripts/ifcfg-lo的内容发现:

  1) /etc/resolv.conf里面多了个search(search 参数指定域名查找顺序)和nameserver(本机的网关地址(路由器的地址))

  2)/etc/sysconfig/network-scripts/ifcfg-lo多了个BROADCAST(广播地址)和ONBOOT=yes(设置为网卡自动开启)

问题已解决!

linux下ping不通问题的说明与解决(DNS配置丢失)的更多相关文章

  1. linux下ping不通的解决方法

    转自:https://blog.csdn.net/weixin_33400820/article/details/80227702 今天在做练习的时候,发现如何都无法ping通外网,在经过各种网络求助 ...

  2. Linux服务器ping不通域名出现的unknown host 错误解决办法

    "ping: unknown host www.baidu.com" 解决方法 如果某台Linux服务器ping不通域名, 如下提示: # ping www.baidu.compi ...

  3. linux:ping不通www.baidu.com

    如果某台Linux服务器ping不通域名, 如下提示: [root@localhost ~]# ping www.baidu.com ping: unknown host www.baidu.com ...

  4. Linux地址ping不通情况怎么办?

    查看原文:http://www.ibloger.net/article/325.html Linux地址ping不通情况怎么办? 问题:今天写了一个微信支付的项目.有一个class中使用了httpPo ...

  5. Linux下ping命令、traceroute命令、tracert命令的使用

    Linux系统的ping命令是常用的网络命令,它通常用来测试与目标主机的连通性,我们经常会说“ping一下某机器,看是不是开着”.不能打开网页时会说“你先ping网关地址192.168.1.1试试”. ...

  6. 原 Linux:ping不通baidu.com

    如果某台Linux服务器ping不通域名, 如下提示:  [root@localhost ~]# ping www.baidu.com ping: unknown host www.baidu.com ...

  7. Linux下使用 github+hexo 搭建个人博客03-hexo配置优化

    上两张文章,我们说了 hexo 部署.主题的切换.博文的创建.MarkDown 简单使用和 hexo 部署到 GitHub Pages. 也说了我们会使用 next 主题做为我们后期博客的使用和维护. ...

  8. Linux下登录Oracle命令行时删除键^H解决方法

    Linux下登录Oracle命令行时删除键^H解决方法 在linux服务器下登录oracle的控制台,如果输入错误,想用删除键删除时却不能删除,输出的是^H的字符. 方法 用如下的命令可以使删除键生效 ...

  9. CentOS7设置静态IP以及windows下ping不通虚拟机、虚拟机ping不通外网解决方案

    问题:CentOS7安装完成后默认使用的是动态IP,当你每次重新启动CentOS7后,它的IP地址都不一样.一般我们都是使用远程连接工具连接CentOS7进行操作,如果每次IP都不一样,系统启动后,每 ...

随机推荐

  1. Spring的IOC原理

    1. IoC理论的背景 我们都知道,在采用面向对象方法设计的软件系统中,它的底层实现都是由N个对象组成的,所有的对象通过彼此的合作,最终实现系统的业务逻辑. 图1:软件系统中耦合的对象 如果我们打开机 ...

  2. Windows下Mysql5.7忘记root密码的解决方法

    找到mysql5.7安装的目录,我这里是:C:\Program Files\MySQL\MySQL Server 5.7 先停止mysql服务 在服务里找到MySQL57服务,停掉它. 修改my.in ...

  3. 4、hello world

    package com.ourteam.firstexample; import io.netty.bootstrap.ServerBootstrap;import io.netty.channel. ...

  4. 算法——001BitMap(位图)算法

    哈希表在查找定位操作上具有O(1)的常量时间,常用于做性能优化,但是内存毕竟是有限的,当数据量太大时用哈希表就会内存溢出了.而考虑对这些大数据进行存盘分批处理又有IO上的开销,性能又不能满足要求.这个 ...

  5. iOS移动开发CoreDate讲解

    ----欢迎------- 在移动端开发,数据持久化保存是基本要素,没钱在2014年之后退出了coredate,本持久化基于oc作为开发,方便程序人员操作.与SQL数据库,MySQL相比,优点颇多. ...

  6. Python2中生成时间戳(Epoch,或Timestamp)的常见误区

    在Python2中datetime对象没有timestamp方法,不能很方便的生成epoch,现有方法没有处理很容易导致错误.关于Epoch可以参见时区与Epoch 0 Python中生成Epoch ...

  7. 基础总结(04)-- display:none;&&visibility:hidden;区别

    display:none 1.使元素隐藏,不再占据空间. 2.动态操作时会引起页面回流和重绘,影响性能. 3.子元素也会被隐藏并且添加display:block/visibility:visible无 ...

  8. idea 炫酷插件

    1.插件的安装 打开setting文件选择Plugins选项 Ctrl + Alt + S File -> Setting 分别是安装JetBrains插件,第三方插件,本地已下载的插件包.详情 ...

  9. leetCode191. 位1的个数

    编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数为 ‘1’ 的个数(也被称为汉明重量) 示例 1: 输入:00000000000000000000000000001011 输出:3 解 ...

  10. 在云主机上基于nginx部署基于Flask的网站服务器 (自己部署 )

    1.申请云主机 a.阿里云 (注意:阿里云的服务器需要手动添加安全规则使能80端口) b.腾讯云 2.把网站服务器程序拷贝到云主机 3.远程登录云主机 4.解压网站服务器程序 yum install ...