設定靜态IP
#sudo vim /etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.127.63
netmask 255.255.255.0
gateway 192.168.127.1
dns-nameservers 192.168.127.1
(網上大多設定靜态ip都沒有dns-nameservers,這裡設定這個的原因下面有說)
設定動态ip
#sudo vim /etc/network/interfaces
auto eth0
iface eth0 inet dhcp
注:
gateway和dns-nameservers必須和電腦的一樣。
若ip設定為動态ip,則我們可以不用設定dns伺服器。
若ip設定為靜态ip,則需要設定dns伺服器,否則無法ping通外網。
配置dns伺服器(有多種方法):
安裝好Ubuntu之後設定了靜态IP位址,再重新開機後就無法解析域名。想重新設定一下DNS,
cat /etc/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程式動态建立的,不要直接手動編輯,修改将被覆寫。果不其然,修改後重新開機就失效了,搜尋了Ubuntu下設定DNS的相關資料,總結出兩個辦法:
方法一 通過修改/etc/network/interfaces,在它的最後增加一句:
dns-nameservers 192.168.127.1——dns必須和電腦一樣
重新開機網絡後sudo /etc/init.d/networking restart,DNS就生效了,這時候再看/etc/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
nameserver 192.168.127.1
此時,在ping www.baidu.com就可以ping通了。
方法二 (我沒試過)通過修改:
/etc/resolvconf/resolv.conf.d/base(這個檔案預設是空的)
在裡面插入:
nameserver xxx.xxx.xxx.xxx
(若有多個dns可以在添加nameserver)
修改好儲存,然後執行
resolvconf -u
再看/etc/resolv.conf,最下面就多了一行:
cat /etc/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
nameserver xxx.xxx.xxx.xxx