ubuntu设置静态IP地址后,上不了网

文章中也提到,如果是在/etc/resolv.conf添加DNS,由于Ubuntu 有一个 resolvconf 服务,如果重启它,那么 /etc/resolv.conf 的内容会被修改成默认的样子,文件里也有提示文字:“DO

NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN”,所以不能直接修改 /etc/resolv.conf。

还有一点要注意的就是,/etc/resolv.conf其实是一个Link,它真实指向的是 /etc/resolvconf/resolv.conf。

因此,当我们设置成静态IP地址,发现机器不能上网,这时候需要设置DNS,具体的以下两种方法:

第一种方法

在网卡的配置文件里面加dns-nameservers xxx.xxx.xxx.xxx之类信息

iface eth0 inet static
address 192.168.1.250
gateway 192.168.1.1
netmask 255.255.255.0
dns-nameservers 192.168.3.45 192.168.8.10

第二种方法

/etc/resolv.conf中修改nameserver

修改Ubuntu DNS时, 查看/etc/resolv.conf 会看到他使用的dns是 nameserver 127.0.1.1,

是因为Ubuntu 会启动dnsmasq服务, 解析域名时不需要到网络运营商获取..
在解析速度上会慢于网络运营商(有cache).
自己是使用电信的网络, ping 电信的dns速度在 (1 ms , 2 ms)左右, 速度是非常快的..
但使用网络运营商的DNS会有一些不爽的地方, 比如无法解析的域名跳转到114xxxxxxxxxxxxxx….
有些解析还没到GFW就被屏蔽(GFW会再过滤解析).
使用dnsmasq是好处远远大于使用网络运营商的DNS的..

使用Ubuntu一直以来很少动到/etc/resolv.conf这个文件, 原因是本身的dnsmasq加上路由器可以劫持域名

正常的修改Linux的DNS是编辑/etc/resolv.conf文件.
格式是: nameserver ,
如修改DNS为218.85.152.99(福建电信DNS)

nameserver 218.85.152.99

一般这样就直接好了..

系统装有NetworkManager的话, 这样的修改只是临时的, 如重启计算机, 或者插拔网线/etc/resolv.conf被重置为:”nameserver 127.0.0.1”(在base中有定义,重新加载了base中的内容)
Ubuntu默认是有装NetworkManager的..

如果需要永久生效的话, 需要将/etc/NetworkManager/NetworkManager.conf中的dns=dnsmasq注释掉. 禁止使用dnsmasq插件.

[main]
plugins=ifupdown,keyfile,ofono
#dns=dnsmasq [ifupdown]
managed=false

然后重启NetworkManager
注意: 这里终端不能使用su 切换到root, 只能在当前用户使用sudo 去执行.

 service network-manager restart

这个时候我们编辑/etc/resolv.conf 或者在Ubuntu网络连接里面指定DNS就不会清空/etc/resolv.conf了.

1 /etc/resolv.conf 其实是一个Link,它其实指向的是 /run/resolvconf/resolv.conf
2 Ubuntu 有一个 resolvconf 服务,如果重启它,那么 /etc/resolv.conf 的内容会被修改成默认的样子
所以 不能直接修改 /etc/resolv.conf

修改 resolvconf服务的配置文件: /etc/resolvconf/resolv.conf.d/head(或者base、tail这三个文件均可),加入所需的域名服务器:nameserver xxx.xxx.xxx.xxx

search mydomain.com
nameserver 61.139.39.73
nameserver 61.139.2.69

修改完成需要执行2个命令如下:

$resolvconf -u (关于 resolvconf 服务更多信息,可以用man查看:man resolvconf )
$/etc/init.d/networking restart

linux -- Ubuntu修改静态IP地址重启后无法上网的解决的更多相关文章

  1. 在linux中设置静态ip地址

    在linux中设置静态ip地址1.在终端中输入:vi /etc/sysconfig/network-scripts/ifcfg-eth0 2.开始编辑,填写ip地址.子网掩码.网关.DNS等[root ...

  2. centos修改静态Ip地址

    centos修改静态Ip地址 待办 昨天待办 https://blog.csdn.net/johnnycode/article/details/40624403 centos修改静态ip地址

  3. Linux:自动获取静态IP地址,清空iptable,修改selinux脚本

    自动获取静态IP地址,清空iptable,修改selinux脚本 环境:VMware 平台:centos6.8全新 功能: 1)应用ifconfig -a,route -n,cat /etc/reso ...

  4. Ubuntu-12.04-server 配置修改静态 IP地址

    前几天在装Ubuntu 12.04 Server版系统的服务器时IP地址写错了,导致服务器不能上网,今天重新修改了一下IP地址,这里做一个总结. 1.配置静态IP地址 sudo vi /etc/net ...

  5. CentOS7 修改静态IP地址

    Ip配置文件在/etc/sysconfig/network-scripts文件夹下,查找该文件的方法为: [root@localhost ~]# ll /etc/sysconfig/network-s ...

  6. Linux虚拟机配置静态ip地址

    使用VMware搭建的虚拟机ip地址经常变动,在这里记录一下虚拟机设置静态ip地址: 首先通过VMware菜单栏编辑->虚拟网络编辑器->NAT设置查看子网ip地址和网关ip: 例如我这里 ...

  7. ubuntu 设置静态ip地址不生效问题

    出现了一个问题是,配置了静态ip地址之后,重启网络服务,查看ip地址是生效的,过会再看就 不生效了,查看网上说是由于 network-manager 管理ip地址时候出现的冲突,将network-ma ...

  8. 如何修改静态IP地址和动态IP地址

    打开控制面板,一般在电脑的菜单栏能找到,win8和win10可以使用快捷键(win键+X键),找不到的朋友可以搜索一下.   进入到网络和共享中心,点击更改适配器设置.   这里显示的是电脑所以的网络 ...

  9. ubuntu 修改静态IP和DNS

    1.修改配置文件/etc/network/interfacesroot@ubuntu:~# sudo vi /etc/network/interfaces 添加以下内容:auto eth0       ...

随机推荐

  1. CSV 读写

    using System; using System.IO; using System.Runtime.InteropServices; using UnityEngine; public class ...

  2. ThinkPad如何修改fn键默认操作

    ThinkPad如何修改fn键默认操作 ThinkPad笔记本如何修改fn键默认操作 Fn键F1-F12

  3. 大话设计模式C++实现-第1章-简单工厂模式

    一.UML图 二.包括的角色 简单工厂模式包括三个角色: (1)工厂类Factory:工厂类是用来制造产品的. 因此,在Factory中有一个用于制造产品的Create函数或者Generate函数之类 ...

  4. jquery 获取css position的值

      jquery 获取css position的值 CreateTime--2018年5月28日14:03:12 Author:Marydon 1.情景展示 <div id="aa&q ...

  5. CentOS 开机启动

    # vim /etc/rc.local 加入你想在开机后执行的脚本 source /etc/profile /usr/local/xx.sh 写第一句是想保证在执行脚本前系统环境变量有效,第二句才是真 ...

  6. 在linux下新增一块硬盘的操作。(包含大于2T的硬盘在linux下挂载操作)

    转自:http://blog.csdn.net/season_hangzhou/article/details/36423223 一.安装硬盘到物理机上. 二.查看硬盘是否正确安装. 使用“fdisk ...

  7. http请求返回405

    普通情况下,是你用了默认method=get,须要改为post

  8. 查询MYSQl数据表中的最后一条记录

    mysql: select * from table order by id DESC limit 1 oracle: select * from emp where id in (select ma ...

  9. 使用rman备份异机恢复数据库

    一.RMAN备份源库注意点: 最好保留rman备份日志 $rman target / log=backup.log RMAN>run { allocate channel t1 type dis ...

  10. sql 百分比

    select [city], bfb=cast(cast(count(*)*100./(select count(*) from [UserBasicInfo]) as decimal(10,0)) ...