前言
自己嘗試在linux上添加靜態ip,嘗試了好多次,都失敗了。今天硬着頭皮終於修改成功了,收貨還是不小,再此總結一下。
有用鏈接
● http://www.2cto.com/os/201404/292853.html
● ubuntu網絡配置的一個總結:http://www.2cto.com/os/201404/292853.html
● 設置固定ip:http://my.oschina.net/ordiychen/blog/620285
●
linux 的網絡靜態ip修改主要分爲四部分
- 網卡配置:主要涉及命令ifconfig
- 路由配置,網關配置:route
- dns配置(配置dns的地址,dns的解析器):
- host配置(機器的hostname,靜態執行哪些dns和哪些ip想對應)
網卡配置
永久修改網卡配置:網卡的配置文件
linux在啓動的時候,會啓動網卡的服務,網卡的服務會讀取此配置文件來啓動相應的網卡和網絡配置服務
一篇比較詳細的解釋:http://www.360doc.com/content/13/0116/21/1317564_260601826.shtml
配置文件地址: /etc/network/interfaces
主要的編輯指令及解釋:
1 auto lo
2 iface lo inet loopback
3
4 # The primary network interface
5 auto eth0
6 iface eth0 inet static
7 address 192.168.0.42
8 network 192.168.0.0
9 netmask 255.255.255.0
10 broadcast 192.168.0.255
11 gateway 192.168.0.1
上面的配置中,
第1行跟第5行說明lo接口跟eth0接口會在系統啓動時被自動配置;
第2行將lo接口設置爲一個本地迴環(loopback)地址;
第6行指出eth0接口具有一個靜態的(static)IP配置;
第7行-第11行分別設置eth0接口的ip、網絡號、掩碼、廣播地址和網關。
- 重啓網卡的服務:sudo /etc/init.d/networking restart(ubuntu14.04 desktop: sudo service network-manager restart 然後 ifup 網卡)
臨時修改網卡信息:ifconfig
ifconfig詳解:http://www.cnblogs.com/peida/archive/2013/02/27/2934525.html
幾個重要的ifconfig的解釋
ifconfig:顯示已經啓動的網卡的信息
ifconfig -a:顯示所有網卡的信息
通過ifconfig -a就可以查看所有網卡的信息,在/etc/network/interfaces配置網卡的時候,通過該指令就能知道有哪些網卡。同時,通過比較ifconfig和ifconfig -a就可以知道哪塊網卡啓動,哪塊網卡沒有啓動了。
修改網卡的信息:ifconfig ifconfig eth0 192.168.120.56 netmask 255.255.255.0
網卡啓動和關閉: ifconfig eth0 down/up
路由配置
route命令詳解:http://www.cnblogs.com/snake-hand/p/3143041.html
臨時修改路由表:route
查看路由表: route -n
添加默認網關:route add default gw ip (route del default)
添加靜態路由:route add 157.0.0.0 mask 255.0.0.0 157.55.80.1 metric 3 if 2
永久修改路由:
- 編輯/etc/rc.local 文件,在裏面添加 route add default gw ip即可(因爲機器啓動的時候會執行/etc/rc.local 裏面的腳本,因此該方法和1的方法是一樣的)
dns配置
臨時修改dns,修改保存後會立即生效
- 編輯/etc/resolv.conf(sudo vim /etc/resolv.conf)
- 在文件的後面添加 : namserver dns的ip
該文件是自動生成的,因此在每次重啓的時候都會被覆蓋,因此是臨時的dns配置
永久修改dns
方法:編輯 /etc/resolvconf/resolv.conf.d, 在文件後面添加
namserver dns的ip (eg:nameserver 114.114.114.114)
解釋:resolv.conf文件就是根據/etc/resolvconf/resolv.conf.d目錄中的這幾個文件生成的
host配置
host詳解:http://liuleijsjx.iteye.com/blog/427900(裏面有主機名和域名之間的關係解釋)
靜態hots的配置文件 :/etc/hosts(該文件靜態指定dns和ip的映射關係)
eg:
127.0.0.1 localhost.localdomain localhost
主機地址 主機名.域名(可省略) 主機名別名(其實就是主機名)
(2)臨時修改主機hostname:hostname指令
(3)永久修改主機hostname:hostname指令
http://blog.csdn.net/dapao123456789/article/details/13288179
編輯未見/etc/hostname即可
linux網絡故障的調試方法和步驟
- 檢測網卡是否配置正確,網卡是否啓動:ifconfig(通過ifconfig 和ifconfig -a比較,看網卡是否啓動,如果啓動了則看網卡信息是否配置正確)
- 檢測dns是否配置正確:ping www.baidu.com (如果錯誤是dns不知道,那麼就是dns配置錯誤了,通過上面3的dns配置部分配置正確即可)
- 檢測網關是否配置正確:通過 ping 內網ip 和ping 外網ip來判斷(如果內網ip能ping通,外網ip不能ping通,那麼就是網關配置錯誤,通過上面2介紹配置正確即可)