今天把Linux的網絡配置總結了一下,雖然並不難但是是個比較重要的基礎。然後我也不知到自己以後是否會做運維,但是我知道自己比較喜歡刨根問底。還有就是我非常珍惜我曾經掌握過的這些運維的技能。今天突然間問自己,Linux網絡配置的那個文件路徑是什麼。突然間小心臟又繃緊了,我發現記憶已經開始模糊了。雖然陸續有把之前運維的筆記整理上來,但是每次都有種寫遺書的淡淡地憂傷在裏面。突然間又想暴粗口了。。。。。
一、網絡基本配置
首先就是/etc/sysconfig/network-scripts/ifcfg-eth0這個配置文件。這裏的eth0就是我們的網卡名字,也是默認的名字。我們先來看看這個配置文件,如下(以我自己機子爲例子):
DEVICE="eth0"
BOOTPROTO="dhcp"
HWADDR="60:EB:69:BA:19:03"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="10372dbd-9192-405d-b567-6cb32642acfa"
由於是自家用的小電腦,配置比較簡單。我們來一個一個介紹一下先:
DEVICE:這個是網卡的名字,不是特別重要
BOOTPROTO:這個一共有4個值分別是none、static、bootp、dhcp。none值主要是在網卡綁定的時候用到的,一般不使用。static值配置靜態ip,一般我們在配服務器的時候就使用static(畢竟服務器要是經常ip變動,我相信騰訊肯定會被勞資們拆了)。bootp值也不常用,它是指通過bootp協議獲取ip。bootp是一種udp/ip的協議,具體可以再去了解一下。dhcp值這個一般自家用,就是通過dhcp獲取ip。
HWADDR:這個是網卡MAC地址
NM_CONTROLLED:這裏的前綴NM是指NetworkManager,是一款Linux自帶的網絡管理工具。yes就是說這個網卡受到NM的控制,no就是不受它控制。一般做服務器配靜態ip都會把這裏設成no,然後NM的開機啓動也要用chkconfig off掉。
ONBOOT:這個是指開機的時候是否啓動這個網卡,yes就是開機啓動,no就是不啓動。
TYPE:網卡類型
UUID: 這個是全球唯一標識,沒有用的東西。
由於我電腦用的是dhcp,所以補充一些簡單的配置字段:
IPADDR=192.168.1.10 //ip地址
NETMASK=255.255.255.0 //子網掩碼
GATEWAY=192.168.1.1 //默認網關
PEERDNS:是否指定DNS。如果使用DHCP協議,默認爲yes。
DNS{1, 2}:DNS地址。當PEERDNS爲yes時會被寫入/etc/resolv.conf中yes:如果DNS設置,修改/etc/resolv.conf中的DNS
no:不修改/etc/resolv.conf中的DNS
USERCTL:用戶權限控制
yes:非root用戶允許控制該網絡接口
no:非root用戶不運行控制該網絡接口
IPV6INIT:是否執行IPv6
yes:支持IPv6
no:不支持IPv6
IPV6ADDR:IPv6地址/前綴長度
二、獻給那些windows運維人員
在我實習的時候,我看到有很多運維window的員工適應不了windows運維到Linux運維的轉變。畢竟也上了一些年紀,然後確實轉變挺大的。所以我這裏給上一個setup命令,可以在Linux下面提供window的圖形化界面配置。希望可以幫助到一些人:
非常棒吧,(*^__^*) 。除了Network configuration之後,還可以對防火牆、開機啓動等各方面的配置。配置完之後,會自動在對應的配置文件中進行修改。具體的使用不難,大家自己摸索一下吧。
三、網絡配置進階——網卡綁定
這個綁定分爲2種:單網卡綁定多個ip和多網卡綁定單個ip
單網卡綁定多個ip
使用情景:
比如公司使用不同的運營商。爲了提高系統穩定性,會爲網卡綁定兩個ip。或者像一臺服務器運行多個小型網站站點,也會需要綁定多個ip地址。
具體配置(非常簡單):
首先因爲我環境比較特殊,先進行下面的配置:
1、把ifcfg-eth0配置爲靜態ip地址(192.168.11.10)
2、service NetworkManager stop 關閉掉NM
然後我們在當前的配置目錄下執行cp ifcfg-eth0 ifcfg-eth0:0利用原來的配置,創建新的子網卡文件各個配置文件如下:
ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="static"
IPADDR="192.168.11.10"
HWADDR="60:EB:69:BA:19:03"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="10372dbd-9192-405d-b567-6cb32642acfa"
ifcfg-eth0:0
DEVICE="eth0:0"
BOOTPROTO="static"
IPADDR="192.168.11.11"
HWADDR="60:EB:69:BA:19:03"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="10372dbd-9192-405d-b567-6cb32642acfa"
最後重啓一下網絡,查看一下效果:
多網卡綁定單個ip
使用情景:
這個一般是提高網絡的高可用性,當一塊網卡出現問題的時候使用第二快網卡。雖然聽起來好像很誇張,但是像思科的路由器也會裝有備用電源或者CPU(不是我們電腦的cpu,是路由器的)
具體配置:
範例:
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
2、創建他們的主人bond0(ifcfg-bond0)。
範例:
DEVICE=bond0
BOOTPROTO=static
IPADDR=10.1.3.210
NETMASK=255.255.255.0
GATEWAY=10.1.3.254
ONBOOT=yes
3、修改/etc/modprobe.d/dist.conf加入下面內容:
alias bond0 bonding
options bond0 miimon=100 mode=1
mode=0:表示load balancing (round-robin)爲負載均衡方式,兩塊網卡都在工作。
mode=1:表示fault-tolerance (active-backup)提供冗餘功能,工作方式是主備的工作方式,其中一塊網卡在工作(若eth0斷掉),則自動切換到另一個塊網卡(eth1做備份)。
最後service network restart驗證一下吧。