DNS本事是倒掛的樹狀結構(和linux目錄結構很像),他的頂點也是根"."linux
根:跟域名服務器,全球13臺。windows
頂級域名:org.com.edu.gov.net等bash
一級域名:服務器
圖示一:網絡
圖示二:負載均衡
dig www.baidu.com +trace #查詢默認解析過程tcp
dig @114.114.114.114 www.baidu.com +trace #指定dns爲114解析,查看其解析過程。操作系統
在Linux系統中,咱們能夠在一塊物理網卡上配置多個IP地址,以此來實現相似子接口的功能,咱們稱之爲IP別名。固然在其餘操做系統上,好比windowns、mac os上也支持在一塊物理網卡配置多個IP地址。好比說咱們的Linux主機做爲一個DHCP服務器,它可能要爲不一樣的網段分配多個IP地址,在Linux系統中,咱們經過IP別名來實如今一塊物理網卡上配置多個IP地址。.net
【注意:】要使用IP別名來配置多個IP地址,咱們首先須要關閉NetworkManager服務3d
在CentOS或者RHEL上,都默認會啓用NerworkManager這個服務來對網卡進行管理,NetworkManager服務其實就是咱們操做系統右上方那兩個小電腦圖標,咱們在圖形化界面能夠點擊那個來指定使用哪塊網卡,可是咱們若是須要使用IP別名,就必需要禁用掉這個服務,停掉NetworkManager服務後,便可以使用ip addr 命令來爲網卡添加IP別名。
ip addr add 172.25.215.40
/24
dev eth0 label eth0:0 #後面的eth0:0 表示,咱們給eth0這塊網卡增長一個IP別名,後面那個0表示別名號,第二個別名就能夠寫成 eth0:1
若是說咱們須要永久保存這個信息,咱們就須要在 /etc/sysconfig/network-scripts 這個文件下創建一個名字爲 ifcfg-eth0:0 這樣的配置文件,新建的IP別名是什麼,那麼就在這個目錄下創建一個與該名字對應的文件便可
爲何要使用多網卡綁定技術呢?咱們知道若是使用一塊網卡進行網絡數據傳輸時其速度是有限的,即便是千兆網卡,其速度也是有限制的,咱們爲了提升帶寬,咱們能夠將多塊物理網卡綁定成一塊邏輯網卡,這樣網卡的速率就是多塊網卡的速率了。
Linux支持將多塊物理網卡綁定成一塊邏輯網卡,綁定後的邏輯網卡能夠並行使用組成其的全部物理網卡,經過這樣的方式能夠提升帶寬以及網路的穩定性。
咱們在將多塊物理網卡綁定成一塊邏輯網卡之後,咱們的IP地址就要求配置在這塊邏輯網卡上了,而非多塊物理網卡
Linux下經常使用三種模式的網卡綁定:
mode=0:平衡負載模式,有自動備援,但須要」Switch」支援及設定。
mode=1:自動備援模式,其中一條線若斷線,其餘線路將會自動備援。
mode=6:平衡負載模式,有自動備援,沒必要」Switch」支援及設定。
須要說明的是若是想作成mode 0的負載均衡,僅僅設置這裏options bond0 miimon=100 mode=0是不夠的,與網卡相連的交換機必須作特殊配置(這兩個端口應該採起聚合方式)(cisco稱 爲 ethernetchannel,foundry稱爲portgroup),由於作bonding的這兩塊網卡是使用同一個MAC地址.
2個物理網口分別是:eth0,eth1
綁定後的虛擬口是:bond0
服務器IP是:192.168.0.100
第一步,配置設定文件:
/etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.0.100
NETMASK=255.255.255.0
NETWORK=192.168.0.0
BROADCAST=192.168.0.255
#BROADCAST廣播地址
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
/etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
第二步,修改modprobe相關設定文件,並加載bonding模塊:
1.在這裏,咱們直接建立一個加載bonding的專屬設定文件/etc/modprobe.d/bonding.conf
[root@test ~]# vi /etc/modprobe.d/bonding.conf
#追加
alias bond0 bonding
options bonding mode=6 miimon=200 #miimon參數是故障切換時間,經常使用模式mode=6
2.加載模塊(重啓系統後就不用手動再加載了)
[root@test ~]# modprobe bonding
3.確認模塊是否加載成功:
[root@test ~]# lsmod | grep bonding
bonding 100065 0
第三步,重啓一下網絡,而後確認一下情況:
[root@test ~]# /etc/init.d/network restart
[root@test ~]# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.5.0 (November 4, 2008)
Bonding Mode: fault-tolerance (active-backup)
Primary Slave: None
Currently Active Slave: eth0
……
[root@test ~]# ifconfig | grep HWaddr
bond0 Link encap:Ethernet HWaddr 00:16:36:1B:BB:74
eth0 Link encap:Ethernet HWaddr 00:16:36:1B:BB:74
eth1 Link encap:Ethernet HWaddr 00:16:36:1B:BB:74
從上面的確認信息中,咱們能夠看到3個重要信息:
1.如今的bonding模式是active-backup
2.如今Active狀態的網口是eth0
3.bond0,eth1的物理地址和處於active狀態下的eth0的物理地址相同,這樣是爲了不上位交換機發生混亂。
任意拔掉一根網線,而後再訪問你的服務器,看網絡是否仍是通的。
第四步,系統啓動自動綁定、增長默認網關:
[root@test ~]# vi /etc/rc.d/rc.local
#追加
ifenslave bond0 eth0 eth1
route add default gw 192.168.0.1
#如可上網就不用增長路由,0.1地址按環境修改.
留心:
前面只是2個網口綁定成一個bond0的狀況,若是咱們要設置多個bond口,好比物理網口eth0和eth1組成bond0,eth2和eth3組成bond1,
那麼網口設置文件的設置方法和上面第1步講的方法相同,只是/etc/modprobe.d/bonding.conf的設定就不能像下面這樣簡單的疊加了:
alias bond0 bonding
options bonding mode=1 miimon=200
alias bond1 bonding
options bonding mode=1 miimon=200
正確的設置方法有2種:
第一種,你能夠看到,這種方式的話,多個bond口的模式就只能設成相同的了:
alias bond0 bonding
alias bond1 bonding
options bonding max_bonds=2 miimon=200 mode=1
第二種,這種方式,不一樣的bond口的mode能夠設成不同:
alias bond0 bonding
options bond0 miimon=100 mode=1
install bond1 /sbin/modprobe bonding -o bond1 miimon=200 mode=0
仔細看看上面這2種設置方法,如今若是是要設置3個,4個,甚至更多的bond口,你應該也會了吧!
後記:簡單的介紹一下上面在加載bonding模塊的時候,options裏的一些參數的含義:
miimon 監視網絡連接的頻度,單位是毫秒,咱們設置的是200毫秒。
max_bonds 配置的bond口個數
mode bond模式,在通常的實際應用中,6用的比較多。
ping 命令,可是注意個別服務器會禁用icmp
traceroute 命令 -n不解析地址,路由跟蹤。windows下的路由跟蹤命令tracert -d www.baidu.com
telnet IP 端口 檢測端口是否通