linux運維網絡基礎

 

tcp/udp端口號

  • 源端口隨機分配,目標端口使用知名指定端口(大部分服務協議是這樣)
  • 應用客戶端使用的源端口號通常爲系統中未使用的且大於1023的
  • 目的端口號位服務器端應用服務的進程,如telnet 23

TCP三次握手過程

 

 

DNS解析流程原理

DNS結構:

DNS本事是倒掛的樹狀結構(和linux目錄結構很像),他的頂點也是根"."linux

根:跟域名服務器,全球13臺。windows

頂級域名:org.com.edu.gov.net等bash

一級域名:服務器

DNS解析流程

圖示一:網絡

圖示二:負載均衡

查看dns解析過程命令:

dig  www.baidu.com +trace  #查詢默認解析過程tcp

dig @114.114.114.114 www.baidu.com +trace  #指定dns爲114解析,查看其解析過程。操作系統

IP別名(輔助IP)

在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 端口   檢測端口是否通

相關文章
相關標籤/搜索