软件世界网 购物 网址 三丰软件 | 小说 美女秀 图库大全 游戏 笑话 | 下载 开发知识库 新闻 开发 图片素材
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
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
生肖星座 三丰软件 视频 开发 Android开发 站长 古典小说 网文精选 搜图网 美图 中国文化英文版 多播 租车 短信
2017-7-25 20:34:41
多播视频美女直播
↓电视,电影,美女直播,迅雷资源↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  软件世界网 --