一般而言,Linux系统所有的发行版本设置ip和dns等都大同小异,本站有篇介绍方法的文章:Linux命令行设置ip,DNS,gateway(按此方法设置ip和网关是没问题的).

近期公司局域网病毒泛滥,又不想装杀毒软件,Windows系统下实在是防不胜防,搞烦了把那个破机器全盘格式化,装了Ubuntu 12.04.1 LTS服务器版本,用来做ftp服务器.

按以往的经验,轻车熟路地找到
/etc/network/interfaces
将其内容修改格式如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
#auto lo
#iface lo inet loopback
#定义默认以太网接口
auto eth0
#定义使用静态ip设置
iface eth0 inet static
#指定ip地址,网关和子网掩码
address 192.168.17.22
gateway 192.168.17.254
netmask 255.255.255.0

ip和网关顺利设置完,重启机器或网络服务:

1
2
#破机器在机房,记得自己在远程,所以千万别只顾stop,networking是没有restart操作项的.
sudo /etc/init.d/networking stop && /etc/init.d/networking start

接下来设置DNS,依然大大方方地修改了一通:
/etc/init.d/resolv.conf
保存重启,DNS又没设置好,查看此文件,发现被还原了,以为是权限不够,su到root下再做一次,结果重启一个样子.

回头静想,由于自认为有经验,直接把那里面的注释无视了,⊙﹏⊙b汗.

1
2
# 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配置生成才可以.自己的路不通,那就循着前人的道走一遭.在resolvconf这个程序的目录里写入一个新配置文件,文件名必须为tail:

1
sudo vim /etc/resolvconf/resolv.conf.d/tail

在这个文件里写入自己要添加的DNS服务器,格式与以前的``/etc/resolv.conf`文件一致,有几个DNS就写几行nameserver配置:

nameserver 8.8.8.8
nameserver 202.101.172.35
nameserver 8.8.4.4

然后输入``:wq保存退出.最后重启服务器或重启下resolvconf`程序,让配置生效:

1
sudo /etc/init.d/resolvconf stop &&   /etc/init.d/resolvconf start

回过来再看看``/etc/resolv.conf`,刚才的dns已经写入了,找个域名ping一把看看是不是已经生效了.

PING baidu.com (123.125.114.144) 56(84) bytes of data.
64 bytes from 123.125.114.144: icmp_req=1 ttl=48 time =124 ms
64 bytes from 123.125.114.144: icmp_req=2 ttl=48 time=137 ms

ok,正常解析,大功告成.