Linux系統IP參數信息管理
眾所周知,主機要想連接到互聯網,就必須給其設定一組合法的IP參數信息。這些IP參數包括:IP、Netmask、Gateway、Route、DNS以及主機名等。
IP/Netmask : 主要用於確定自身所處的網絡,以及對方主機是否與本主機在同一網絡當中。
Gateway : Gateway就是我們平常說的網關,主要用於本主機與其他網絡主機的通訊使用。
Route:建立路徑條目,分三種類型:
- 網絡路由 到達某一範圍的主機地址,通過的路由,為網絡路由。
- 主機路由 到達某一確定的主機地址,通過的指定路由,即使主機路由
- 默認路由 目標是所有的非本地網絡,通常默認路由的下一跳為主機上某塊網卡的網關地址。
網卡的配置
在配置ip參數之前,我們首先要確定要對哪塊網卡設備進配置。ifconfig這條命令就可以顯示我們當前主機的網卡信息,默認的網卡名稱為eth0、第二塊網卡的名稱則為eth1、以此類推。
在路徑/etc/udev/rules.d/70-persistent-net.rules下保存的是當前系統的網卡配置文件信息,通過修改配置文件"NAME",我們可以修改網卡的名稱。
在修改完配置文件中的網卡名之後,我們需要再到/etc/sysconfig/network-scripts/目錄下,對ecfg-ethX類文件進行修改,使其"DEVICE"與配置文件的"NAME"一致
配置完成後,我們需要重啟網卡驅動才能使修改信息生效,
查詢網卡驅動
重啟驅動,使修改生效
modprobe -r e1000; modprobe e1000
設置ip地址
設置靜態ip
配置ip地址有兩種方式,一種是手工指定靜態ip,一種是動態獲取ip。
靜態ip設置我們可以ifconfig命令進行配置,配置的ip會立即讀入內核,立即生效,但不會永久有效,為了其永久生效,我們一般選擇直接配置對應網卡的配置文件,來獲取永久有效的靜態ip
- 現在我這裏有一塊全新的網卡,eth2
- 在/etc/sysconfig/network-scripts/目錄下,創建ifcfg-eth2文件,當然我們可以直接復制ifcfg-eth1文件,然後再對配置進行修改,如下:
這裏eth1是已經配置好文件,文件顯示的是eth1的參數信息;現在我們對這些參數進行說明:
DEVICE : 此配置文件所關聯的設備,其值通常應該是ifcfg-IFNAME中的IFNAME。
TYPE : 設備類型,通常有"Ethernet","Bridge"
UUID : 網卡設備的唯一識別碼
ONBOOT : 此設備是否隨OS的啟動而激活
HWADDR: 網卡的MAC地址
NM_CONTROLLED : 表示該網卡是否支持NetworkManager管理
BOOTPROTO=dhcp|static|none 如刪除該行,則為手動設置地址
PEERDNS=no 默認是yes,當該網卡啟動時,而PEERDNS=yes,則dns配置文件中的dns會被該網卡的dns設置所覆蓋,若網卡是dhcp則被dhcp的設置覆蓋,若網卡是靜態地址,則被靜態配置的dns覆蓋
IPV6INIT : 初始化ipv6的協議地址
3.配置ifcfg-eth2文件
4.重啟網卡驅動,查看eth2的ip,設置完成
設置自動獲取ip
自動獲取ip地址,我們需要依賴DHCP服務,並不需要自己手動增加ip地址,因此只需要在配置文件中將DHCP服務打開,即BOOTPROTO=dhcp即可。
路由管理
同一個網絡範圍之間的主機交互,通過廣播就可以完成,而要想實現不同網絡範圍的主機的交互,則需要路由信息。
由圖我們可以清晰的了解路由器的作用,路由器含有兩個不同範圍的1.1.1.251和2.2.2.251,當ip為1.1.1.1的主機1想要和ip為2.2.2.2的的主機2交互時,他就會將交互信息發送路由,由路由來完成兩臺主機的交互。
- 具體的管理實現由route命令來管理
route -n : 以數字的格式顯示路由表信息
- 添加路由,新增路由條目,用戶告訴本機至目標網絡或主機要經由的下一跳路由
route add [-net | host ] TARGET gw GATEWAY [dev IFNAME] -net 後面需要跟一個網絡地址,表示網絡路由 -host 後面需要跟一個主機地址,表示主機路由
例: 到達192.168.0.0/24網絡,經由172.16.0.1網關:
route add -net 192.168.0.0/24 gw 172.16.0.1
到達192.168.1.124主機,經由172.16.0.1網關:
route add -host 192.168.1.1/24 gw 172.16.0.1
設定默認網關:
route add -net 0.0.0.0/24 gw 172.16.0.1
route add default gw 172.16.0.1
* 刪除路由
route del [-net | -host] TARGET gw GATEWAY [dev IFNAME]
-----
Linux系統IP參數信息管理