软件世界网 购物 网址 三丰软件 | 小说 美女秀 图库大全 游戏 笑话 | 下载 开发知识库 新闻 开发 图片素材
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
移动开发 架构设计 编程语言 Web前端 互联网
开发杂谈 系统运维 研发管理 数据库 云计算 Android开发资料
  软件世界网 -> 系统运维 -> Ubuntu网络设置 -> 正文阅读

[系统运维]Ubuntu网络设置


内容:


A). Ubuntu 14.04中设置IP地址的三种方式;
B). 使用NetworkManager管理无线网络;
C). 解决resolv.conf被重写问题.


A). 在Ubuntu 14.04中设置IP地址的方式有三种:
一.通过命令直接进行配置
步骤1.配置IP地址,例如设置网卡eth0的IP为172.31.174.142 ,子网掩码为255.255.255.0
#ifconfig eth0 172.31.174.124 netmask 255.255.255.0 


步骤2.添加默认路由(设置网关),例如设置网关为172.31.174.1        
#route add default gw 172.31.174.1     
                                                         
步骤3.配置DNS
配置DNS需要打开文件 /etc/resolv.conf进行DNS服务器地址的添加
使用v编辑器i打开 /etc/resolv.conf文件,命令如下:
#vi  /etc/resolv.conf
打开文件/etc/resolv.conf后会看到如下内容
[img]http://blog.csdn.net/weicao1990/article/details/50992128/file:/C:/Users/HongYuan/AppData/Local/YNote/data/liuhongyuanmxz@163.com/a535f010520044c08f503514819e1f86/clipboard.png
在nameserver 后面可以修改DNS服务器的地址,若是增加多个可以如下这样依次排列
nameserver 140.207.198.6
nameserver 202.102.154.3



步骤4.重启网卡配置,使网络配置生效。
#/etc/init.d/networking restart



步骤5.使用ifconfig查看配置结果
#ifconfig
[img]http://blog.csdn.net/weicao1990/article/details/50992128/file:/C:/Users/HongYuan/AppData/Local/YNote/data/liuhongyuanmxz@163.com/f2fff5a556184ccdb06ba3e9fd82f11a/clipboard.png
上面步骤1、步骤2进行的网络配置只能临时修改,当linux重启之后,配置信息会丢失,使用ifconfig命令查看配置将会看不到之前的网络配置信息。


二、直接修改配置文件

 ubuntu的网络配置文件是:/etc/network/interfaces ,可以在里面可设置DHCP或手动设置静态ip。
1. 以DHCP方式配置网卡,
使用vi编辑器打开配置文件/etc/network/interfaces,命令如下: 
#vi /etc/network/interfaces 
内容如下:
# The primary network interface - use DHCP to find our address 
auto eth0 iface 
eth0 inet dhcp 

文件中
auto eth0 iface 表示让网卡开机自动挂载;
eth0 inet dhcp 表示动态设置ip。
重启网卡配置,使网络配置生效:

#/etc/init.d/networking restart 

也可以在命令行下直接输入下面的命令来获取动态的IP地址 sudo dhclient eth0 


2. 为网卡配置静态IP地址

编辑文件/etc/network/interfaces:
#vi /etc/network/interfaces 
并用下面的行来替换有关eth0的行: 

# The primary network interface 
auto eth0 
iface eth0 inet static 
address 172.31.174.142 
gateway 172.31.174.1
netmask 255.255.255.224 
#network 203.171.239.128 

#broadcast 192.168.3.159 

文件中

iface eth0 inet static 表示IP地址设置为静态IP地址
address 172.31.174.142 表示IP地址设置为   172.31.174.142 
gateway 172.31.174.1    表示设置网关为       172.31.174.1
netmask 255.255.255.0 表示设置子网掩码为 255.255.255.0
注:注释部分可以先不关心
如果还需要配置DNS服务器,在进行DNS配置:

配置DNS需要打开文件 /etc/resolv.conf进行DNS服务器地址的添加
使用v编辑器i打开 /etc/resolv.conf文件,命令如下:
#vi  /etc/resolv.conf
打开文件/etc/resolv.conf后会看到如下内容
[img]http://blog.csdn.net/weicao1990/article/details/50992128/file:/C:/Users/HongYuan/AppData/Local/YNote/data/liuhongyuanmxz@163.com/f7d75823b96d45489584a840dba0e848/clipboard.png
在nameserver 后面可以修改DNS服务器的地址,若是增加多个可以如下这样依次排列
nameserver 140.207.198.6
nameserver 202.102.154.3




重启网卡配置,使网络配置生效:
#/etc/init.d/networking restart 



三、使用NetworkManager进行网络配置
在ubunbtu中,除了可以修改/etc/network/interfaces来进行配置以外,还可以直接在network-manager中配置。
network-manager的配置和直观,按照提示一步一步操作即可,有兴趣的朋友,可以自行Google或者Baidu。
但如果修改了interfaces,又配置了network-manager,你就会发现出现了一些莫名其妙的问题:
1、interfaces和 network-manager中的网络设置不一样,系统实际的IP是哪个?
2、有时候莫名其妙的,界面右上角的网络连接图标就丢失了。
3、明明在network-manager中配置了正确的网络设置,为什么就上不了网呢?
其实,我们要知道 interfaces和 network-manager之间的关系,这些问题就不难解释了。
首先,当系统内没有第三方网络管理工具(比如network-manager)时,系统默认使用interfaces文件内的参数进行网络配置。
当系统内安装了 network-manager之后,network-manager默认接管了系统的网络配置,使用network-manager 自己的网络配置参数来进行配置。
但是,如果用户在安装network-manager之后(Desktop版本默认安装了network-manager),自己手动修改了interfaces 文件,那network-manager 就自动停止对系统网络的管理,系统改使用interfaces 文件内的参数进行网络配置。
此时,再去修改network-manager内的参数,不影响系统实际的网络配置。若要让network-manager内的配置生效,必须重新启用network-manager接管系统的网络配置(如何重新启用下文会有介绍)。
现在知道了两者之间的工作关系,再看上面的三个问题:
1、要看network-manager是否接管,如果没有接管,系统实际的IP设置以interfaces 中的为准。反之,以network-manager中的为准。
2、当network-manager停止接管的时候,网络连接图标就丢失了。
3、同样是接管的问题。
如果用户希望在Desktop版本中,直接使用interfaces 进行网络配置,那最好删除network-manager 。
删除network-manager非常简单,只需要输入如下命令即可:
#apt-get remove network-manager
如果在出现上述问题(以上3个问题)之后,希望能继续使用network-manager来进行网络配置,则需要进行如下操作:
sudo servicenetwork-manager stop # 停止 network-manager服务
sudo rm/var/lib/NetworkManager/NetworkManager.state # 移除network-manager的状态文件
sudo gedit/etc/NetworkManager/nm-system-settings.conf # 打开network-manager的配置文件
##里面有一行:managed=true
## 如果你手工改过/etc/network/interfaces,network-manager会自己把这行改成:managed=false
## 将false 修改成true
servicenetwork-manager start


B). 使用NetworkManager管理无线网络
NetworkManager最方便的地方是个人电脑用无线连网的时候,因为文字界面的 iwlist wlan0 scan 并不是非常好用,而NetworkManger可以像windows那样列出所有可用的wifi热点,如果有中文乱码的,也一样可以连接。但如果你的机子是用来做服务器的,或者是在办公室里使用,有固定的路由环境,一般来说,也会有固定的ip,因为这样可以方便内网共享资源。总之不是个人用的,而且不用移来移去的话,最好是关掉这个NetworkManager,当然如果你经常带着本子跑,想去咖啡馆蹭网的话,就一定要打开这个NetworkManager,自动搜索无线非常方便了。
下面来说说这两种情况:
1,使用NetworkManger来联网,这个时候,如果使用了无线连接路由,而在/etc/network/interfaces里配置了有线连接的eth0的话,就会发生一个超级诡异的问题:可以访问外网,但不能访问内网,比如无线路由ip 192.168.0.1,ping该地址,会显示有线网卡的ip地址无法ping通,而不是无线!证明在设置了有线eth0的时候,会优先采用,但奇怪的是,外网连接正常,所有我怀疑这可能是Ubuntu的一个bug。所以当使用 NetworkManager的时候,可以注释掉所有/etc/network/interfaces 里的内容,仅仅保留本地回环网络:

auto lo
iface lo inet loopback

这两句。设置固定ip,可以在NetworkManager图形界面里配置。
2,关闭NetworkManager,

关闭命令:sudo /etc/init.d/network-manager stop
取消开机启动:chkconfig network-manager off 
重启网络:/etc/init.d/networking restart
修改 /etc/network/interfaces 文件,
    系统配置部分:本地回环网络。
        auto lo
        iface lo inet loopback
    有线配置部分:
        auto eth0
        #iface eth0 inet dhcp # 如果你不想用固定ip的话,推荐用固定ip,这样可以省去请求路由分配的时间
        iface eth0 inet static
        netmask 255.255.255.0
        gateway 192.168.0.1      #gateway 0.0.0.0 # 拨号上网请把 gateway全部设置为0
        address 192.168.0.112
    无线配置部分:
        auto wlan0
        iface wlan0 inet static
        netmask 255.255.255.0
        gateway 192.168.0.1
        address 192.168.0.113
        pre-up ip link set wlan0 up
        pre-up iwconfig wlan0 essid ssid
        wpa-ssid TP-Link # 这里的ssid为路由里设置的无线名称
        wpa-psk 12345678 # 无线密码
    adsl拨号上网:
        auto dsl-provider
        iface dsl-provider inet ppp # dsl-provider 为之前配置好的拨号名称
        provider dsl-provider



C). 解决resolv.conf被重写问题
虽然配置了DNS,但是每次重启机器或重启网络后/etc/resolv.conf文件就会被重写,也就是又恢复原 样了,你以前的配置就不存在了,每次都要手动配置是极不可取的,所以这步是必须的,首先我们要搞清楚resolv.conf被重写的原因和机制,这在不同 Ubuntu版本下有所差异。那怎么知道呢?一般resolv.conf文件一开头就告诉你了。
方法一:与版本有关
a) ubuntu 12.04
打开/etc/resolv.conf后可看到开头的一句话:

[img]http://blog.csdn.net/weicao1990/article/details/50992128/file:/C:/Users/HongYuan/AppData/Local/YNote/data/liuhongyuanmxz@163.com/6fbf46a33c254addb995f62ac528c50b/clipboard.png
说明resolv.conf这个文件是由NetworkManager这个程序生成的(对应的是network-manager服务),那么解决办法也就来了:我们关掉network-manager即可,命令如下:

#service network-manager stop 
或者
#/etc/init.d/network-manager stop
但是这种方法不是一劳永逸的,因为每次重启系统后还是会自动启动这个服务,因此我们需要完全禁止network-manager启动即可。
编辑network manager的配置文件/etc/init/network-manager.conf

#/etc/init/network-manager.conf
注释掉其中的start on部分即可:

# network-manager - network connection manager
#
# The Network Manager daemon manages the system's network connections,
# automatically switching between the best available.


description     "network connection manager"


#start on (local-filesystems
#         and started dbus
#         and static-network-up)
stop on stopping dbus


expect fork
respawn


script
        # set $LANG so that messages appearing on the GUI will be translated. See LP: 875017
        if [ -r /etc/default/locale ]; then
                . /etc/default/locale
                export LANG LANGUAGE LC_MESSAGES LC_ALL
        fi
b)Ubuntu 13.04以及ubuntu 14.04
不知道Ubuntu从哪个版本开始不是由NetworkManager生成resolv.conf的了,至少在13.04下是这样的,因为resolv.conf开头写着这样一句话:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
说是由resolvconf生成,NetworkManager仍然存在,因为它是DHCP上网不可缺少的,但此时禁止NetworkManager启动 已经不管用了,因为resolv.conf已经不归它管了,我们试着看看resolv.conf与resolvconf有啥关系,查看:
[img]http://blog.csdn.net/weicao1990/article/details/50992128/file:/C:/Users/HongYuan/AppData/Local/YNote/data/liuhongyuanmxz@163.com/4e4576c1d81d4c6da4b2766c4195a8b9/clipboard.png
说明/etc/resolv.conf 其实只是一个link,它实际上指向的是 /run/resolvconf/resolv.conf,这也就解释了为什么每次重启都会被重写的原因,你改的只是个link,对原文件没有影响,而每次重启这个link还得加载原文件的内容,所以对link的修改无效。
解决方法就是:修改真实的原文件,如下:
vi /etc/resolvconf/resolv.conf.d/head
发现这个文件与/etc/resolv.conf文件一模一样,这就对了,在里面加入你自己的nameserver即可,这样每次重启就不会被重写了。

PS:网上也有人说修改/etc/resolvconf/resolv.conf.d/base这个文件也行,我没有亲自测试,感兴趣的可用自己测试。



方法二: 与版本无关
前面提到固定IP的上网方式主要是修改/etc/network/interfaces这个文件,配置IP、网关什么的,其实这里面还有个参数可以配置,那就是DNS了,对应的参数名为dns-nameservers,这里设置的优先级比resolv.conf与NetworkManager高,也就是网络会从这里读取DNS配置,如果没配置才去看resolv.conf里面的设置,因此在这里面配置DNS更简单。

# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
auto eth0


iface eth0 inet static
address 192.168.1.151
netmask 255.255.255.0
gateway 192.168.1.2


dns-nameservers 202.38.64.1
































......显示全文...
    点击查看全文


上一篇文章      下一篇文章      查看所有文章
2016-03-28 21:49:00  
系统运维 最新文章
linux新进程的创建
Muduo网络库源码分析(一)EventLoop事件循
Linux系统分区
haproxylvsnginx负载均衡的比较
PeopleSoft介绍
win7+iis7+asp+.net+php环境配置
执行系统命令并且将输出写到指定日志文件的
linux批量替换多个文件中的字符串
makefile中=、:=和+=的区别
Linux服务器不关机新增硬盘的方法
360图书馆 软件开发资料 文字转语音 购物精选 软件下载 美食菜谱 新闻资讯 电影视频 小游戏 Chinese Culture 股票 租车
生肖星座 三丰软件 视频 开发 短信 中国文化 网文精选 搜图网 美图 阅读网 多播 租车 短信 看图 日历 万年历 2018年1日历
2018-1-17 9:21:19
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  软件世界网 --