/etc/network/interfaces配置如下:
auto eth0//使用第一个网卡 iface eth0 inet static//静态分配IP address 172.16.21.234//要使用的IP地址 gateway 172.16.21.1//网关 netmask 255.255.255.0//子网掩码 network 172.16.21.0//这个还没明白什么意思 broadcast 172.16.21.255//广播地址
然后重启一下网络服务
/etc/init.d/networking restart这样配置后就可以联通统一网段的内网机器了。
如果要链接外网,还需要配置DNS的信息。需要在
/etc/resolv.conf中配置DNS服务器的信息。如下示例,直接在文件中删除以前的配置,添加下面的配置即可
nameserver 172.16.24.12//这里要填写实际的DNS的IP地址
然后再次重启网卡使配置生效
/etc/init.d/networking restart这样有个缺点,/etc/resolv.conf文件当每次重启时,系统会根据DHCP分配的信息重写这个文件,以前内容会被覆盖。因此这个方法治标不治本。
网上有很多防止/etc/resolv.conf被覆盖的方法,比如在启动时停止网络服务自动启动。我在实际使用中这些配置都没有起到作用,每次重启我的配置依然被重写掉。
=====================================================================
于是我想到了linux开机自启动的服务,如果在开机启动时,让脚本自动将DNS信息写入/etc/resolv.conf文件中,那么每次重启机器不就不用再手动填写了吗?说干就干,网上查到/etc/rc.local脚本是每次启动时最后执行的一个脚本,查看这个脚本的内容,除了注释,只有一个正常的退出语句
exit 0于是,我在这个退出语句之前添加了输入DNS配置到/etc/resolv.conf的命令
echo "nameserver 172.16.xxx.xxx">>/etc/resolv.conf,然后重启,查看/etc/resolv.conf,果然,DNS配置信息已经配置好了。现在每次重启就不用再手动配置DNS就可以正常访问外网了。 这里的DNS服务器地址你要根据你的实际情况配置,比如是使用你们公司内网的DNS还是公网的DNS,知道了地址,替换掉上面代码中的nameserver的值就可以了。