網絡基礎

網絡知識開篇介紹

運維網絡知識結構

基礎部分

網絡通信原理算法

路由(IP地址 路由表 路由協議)vim

交換(MAC地址 mac表 廣播域與衝突域)centos

OSI7層模型數組

網絡通信數據包分裝過程瀏覽器

進階部分

TCP/IP模型(TCP/IP協議簇)緩存

TCP三次握手/四次揮手狀態集轉換安全

深刻部分

IP地址分類服務器

IP地址子網劃分原理網絡

DNS協議原理架構

ARP協議原理

操做部分

與系統相關網絡操做命令

網絡知識學習路徑

路由交換部分

網絡安所有分

網絡運營商部署部分

無線網絡技術

語音網絡技術

網絡基礎知識概念

網絡通信原理

到底什麼是網絡:實現通信的技術

網絡誕生第一步:網絡主機

至少兩臺有通信需求的主機才能構建網絡

網絡誕生第二步:硬件網卡

主機之間實現網絡通信須要有硬件支持,網卡就是實現通信的硬件

網絡誕生第三步:傳輸介質

實現網絡通信還須要有傳輸介質,常見的傳輸介質爲網線、管線、wifi無線等

網絡誕生第四步:數據傳輸

經過網卡將計算機能夠識別的二進制信息轉換爲電壓信息進行傳輸

調製解調的過程

網絡誕生第五步:傳輸問題

經過網卡和傳輸介質,定義1個bit傳輸的單位時間,從而分辨連續相同的信號

網絡誕生第六步:傳輸依賴

在網絡數據傳輸過程當中,影響傳輸速率主要是通信雙方的網卡和傳輸介質

網絡拓撲架構構建

  以上就是一個網絡拓撲圖
       網絡拓撲==網絡設備鏈接圖

  作網絡拓撲圖有助於咱們檢查問題、解決問題

交換原理概念

問題:

在現實中,須要通信的主機可不止兩臺,如何在多臺計算機之間通信,引入設備X(能夠配置不少網卡的設備)

主機A發送後信息到主機D,主機B和C會不會響應

主機D接收到A的信息,如何清除是主機A發送的

廣播包:當全部主機接入到X設備後,主機會發送一個網絡包,識別多有的主機

 

交換機設備說明:
           交換機概念:解決多臺主機在一個網絡裏面通信的需求
           主機身份標識信息:稱爲叫作mac地址,又稱爲是一個物理地址(刻錄在網卡上面的)
           交換機通信的網絡範圍:稱爲叫作一個局域網
           
交換機傳輸數據問題:
           01. 會有廣播風暴產生:會讓主機接收到大量廣播包,影響主機性能
               一個交換機全部接口處於一個廣播域內
           02. 早期交換網絡中,會存在數據衝突問題(數據碰撞)
               目前一個交換機每個接口處於一個衝突域內便可
           總結:假設一個24口的交換機;總共有24個衝突域;總共有一個廣播域       
           
交換機做用特徵說明:           
           在一個交換機的端口上所鏈接的全部終端設備,均在一個網段上(稱爲一個廣播域)
           而且一個網段會有一個統一的網絡標識(mac),會產生廣播消耗設備CPU資源(廣播問題)
           交換機能夠隔離衝突域,每個端口就是一個衝突域
           終端用戶的設備接入
           基本的安全功能
           廣播域的隔離沒法具有的

路由原理概念

大量主機在一個廣播域內,會有廣播風暴問題,咱們能夠把一個大的局域網切割成多個小得局域網

當有多個局域網的時候,即多個交換機組成的網絡。兩個局域網之間的主機之間該如何通信?

鏈接路由器的主機經過IP地址識別不一樣的主機

IP:局域網標識+主機標識

路由器會有一個路由表,記錄不一樣口鏈接的不一樣局域網標識
路由器設備說明:
           路由器概念說明:實現不一樣網段主機通信的需求
           路由器身份標識信息:稱爲ip地址(網段信息+網絡主機信息=IP地址),IP地址又稱爲是一個邏輯地址
           總結:假設一個5口的路由器:總共有5個衝突域,總共有5個廣播域
           
路由器做用特徵說明:
           廣播、組播控制
           對數據作尋址、選擇到達目的網絡的最佳路徑
           流量管理
           鏈接廣域網

網絡架構層次概念

網絡架構模型

網絡層次架構組成
        核心層:(放置外網互聯路由器設備)
            核心層的功能主要是實現骨幹網絡之間的優化傳輸,骨幹層設計任務的重點一般是冗餘能力、可靠性和高速的傳輸
        匯聚層:(放置的3層交換機)
            匯聚層是樓羣或小區的信息匯聚點,是鏈接接入層和核心層的網絡設備,爲接入層提供數據的匯聚\傳輸\管理\分發處理。
            匯聚層爲接入層提供基於策略的鏈接,如地址合併,協議過濾,路由服務,認證管理等。
            經過網段劃分(如VLAN)與網絡隔離能夠防止某些網段的問題蔓延和影響到核心層。
            匯聚層同時也能夠提供接入層虛擬網之間的互連,控制和限制接入層對核心層的訪問,保證核心層的安全和穩定。
        接入層:(放置2層交換機)
            接入層一般指網絡中直接面向用戶鏈接或訪問的部分。接入層目的是容許終端用戶鏈接到網絡,所以接入層交換機具備低成本和高端口密度特性。


網絡規模區域劃分
        局域網:
            本地私有的一個網絡範圍。若是是一個規模比較大的局域網,也會成爲是一個園區網。
        城域網:
            若是一個網絡的覆蓋面積達到了一個城市,就能夠稱爲城域網。
        廣域網:(互聯網)
            若是覆蓋面積達到了全國或者全球,就稱爲廣域網,全球最大的廣域網就是Internet互聯網。

網絡互聯模型

    ①. 網絡層次模型概念介紹
        OSI的概念:
        open system interconnect開放系統互連參考模型,是由ISO(國際標準化組織)定義的。
        是個靈活的、穩健的和可互操做的模型,並非協議,是用來了解和設計網絡體系結構的。
    ②. 網絡層次模型做用說明
        OSI模型的目的:
        規範不一樣系統的互聯標準,使兩個不一樣的系統可以較容易的通訊,而不須要改變底層的硬件或軟件的邏輯。
        每一層指定了不一樣協議標準
    ③. 網絡層次模型組成部分
        OSI把網絡按照層次分爲7層
        由下到上分別爲物理層,數據鏈路層,網絡層,傳輸層,會話層,表示層,應用層。每一個層次對應了相應的標準或者協議。
    ④. 網絡層次模型逐層說明
        傳輸層:
            重要協議:TCP協議和UDP協議
                   傳輸層數據包稱爲報文:會包含兩個重要的信息--->源端口信息 目標端口信息
        網絡層:
            重要協議:IP協議
                   網絡層數據包稱爲包:會包含兩個重要的信息--->源IP地址信息  目標IP地址信息
        數據鏈路層:
                   數據鏈路層數據包稱爲幀:會包含兩個重要的信息--->源MAC地址信息  目標mac地址信息
        物理層:
            傳輸模式:單工(電臺廣播)  半雙工(對講機)  全雙工(電話)(通用模式)
        物理拓撲:總線型 星型 環形網絡

 

 

 

 

網絡OSI網際互聯

①. OSI網際互聯數據包封裝過程

②. OSI網際互聯數據包解封過程  

③. OSI網際互聯過程的詳細描述

 

網絡TCP/IP層次模型

①. 網絡層次模型概念介紹
        用於簡化OSI層次,以及相關的標準。
        傳輸控制協議(tcp/ip)族是相關國防部(DoD)所建立的,主要用來確保數據的完整性及在毀滅性戰爭中維持通訊
        是由一組不一樣功能的協議組合在一塊兒構成的協議簇
        利用一組協議完成OSI所實現的功能

DoD(TCP/IP)模型各層包含的協議


②. 網絡層次模型做用說明


③. 網絡層次模型組成部分


④. 網絡層次模型逐層說明

 

 

 

網絡TCP/IP模型精講

 

①. 網絡重要協議說明
        TCP與UDP協議對比:
        傳輸控制協議(TCP)                                 用戶數據報文協議(UDP)
        面向鏈接                                                      無鏈接
        可靠傳輸                                                      不可靠傳輸
        流控                                                             盡力而爲,盡力傳遞
        使用TCP應用                                               使用UDP的應用:
        WEB瀏覽器;電子郵件;文件傳輸程序        域名系統(DNS);視頻流;IP語音(VoIP)
       tcp:必須創建鏈接,須要雙方都贊成,同步

       udp:無需鏈接,無論對方贊成不一樣意,異步

②. 網絡協議報文結構
        源端口隨機分配,目標端口使用知名端口
        [root@test ~]# cat /proc/sys/net/ipv4/ip_local_port_range
        32768     61000
        因爲TCP協議頭部使用16位來保存端口號,因此端口的個數最多爲65536個,2^16=65536。0號端口不會被tcp和udp協議使用
        tcp和udp協議端口號範圍是 1~65535 ,並非全部的端口都能隨意使用
        http 80 ssh 22 telnet 23
        
        控制字段:
        ack:表示確認控制字段,實現數據可靠鏈接
        syn:表示請求創建鏈接字段
        fin  :表示請求斷開鏈接字段
        說明:控制字段信息默認爲0,控制字段功能不起做用;控制字段信息置爲1,表示相應控制字段功能開啓
        
        應用客戶端使用的源端口號通常爲系統中未使用的且大於1024的
        目的端口號爲服務器端應用服務的進程,如telnet爲23
TCP報文結構

UDP報文結構

③. 網絡鏈接創建過程
        TCP/IP三次握手創建過程

    一握手:請求創建鏈接(syn)

    二握手:鏈接確認再請求(ack syn)

    三握手:最後確認,即創建(ack)


④. 網絡鏈接斷開過程
        TCP/IP三次握手創建過程

    一揮手:請求鏈接要斷開(fin)

    二揮手:斷開請求要確認(ack)

    三揮手:思考事後要斷開(fin,ack)

    四揮手:最後確認,要斷開(ack)
⑤. 網絡狀態轉換過程

  TCP的十一種狀態機轉換

 

另外一種揮手狀況:ACK確認字段沒有被客戶端收到,可是等來了FIN ACK,客戶端直接變成closing

 

經過命令netstat  -an 查看

[root@luffy-001 scripts]# netstat -an|grep -i es
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State      
tcp        0     64 10.0.0.200:22               10.0.0.1:51401              ESTABLISHED 
tcp        0      0 10.0.0.200:22               10.0.0.1:58972              ESTABLISHED 
Active UNIX domain sockets (servers and established)
unix  2      [ ]         DGRAM                    10926  @/org/freedesktop/hal/udev_event
[root@luffy-001 scripts]# netstat -lntup|grep sshd
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1549/sshd           
tcp        0      0 :::22                       :::*                        LISTEN      1549/sshd      

 

網絡TCP/IP涉及原理

①. ARP協議原理
        ARP協議的功能
        1) 將IPv4地址解析爲MAC地址
        2) 維護映射的緩存

經過cmd查看arp緩存

win中

[D:\~]$ arp -a

接口: 192.168.0.16 --- 0xb
  Internet 地址         物理地址              類型
  192.168.0.1           a8-6b-7c-08-8b-ee     動態        
  192.168.0.6           e4-0e-ee-8a-8b-61     動態        
  192.168.0.14          f4-f5-db-38-21-a0     動態        
  192.168.0.21          70-47-e9-3d-13-cd     動態        
  192.168.0.22          60-91-f3-64-5b-94     動態        
  192.168.0.24          a4-50-46-e5-72-25     動態        
  192.168.0.31          00-25-ab-55-62-89     動態        
  192.168.0.255         ff-ff-ff-ff-ff-ff     靜態

 

Linux中

[root@luffy-001 scripts]# arp -a
? (10.0.0.2) at 00:50:56:ef:3e:a0 [ether] on eth0
? (10.0.0.1) at 00:50:56:c0:00:08 [ether] on eth0

 


②. DNS協議原理
        DNS是什麼?DNS(Domain Name System)
        DNS稱爲域名系統,在網站運行中器到了相當重要的做用

  主要做用是負責把網站域名解析爲對應的IP地址。
        
        域名的層次級別:
        第一個級別:稱爲 根域名服務器 .(全球13個)
        第二個級別:稱爲 頂級域名服務器(一級域名服務器).com .cn .gov
        第三個級別:稱爲 二級域名服務器(受權DNS服務器).baidu.com .jd.com
        第四個級別:稱爲 虛擬主機信息 www.baidu.com www.jd.com
        
        DNS解析相關命令
        dig @8.8.8.8 www.xxx.com +trace
        nslookup www.xxx.com
        host www.xxx.com    
        ping www.xxx.com

[root@luffy-001 scripts]# dig www.baidu.com

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.62.rc1.el6 <<>> www.baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 8061
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.baidu.com.            IN    A

;; ANSWER SECTION:
www.baidu.com.        89    IN    CNAME    www.a.shifen.com.
www.a.shifen.com.    89    IN    A    163.177.151.109
www.a.shifen.com.    89    IN    A    163.177.151.110

;; Query time: 76 msec
;; SERVER: 223.5.5.5#53(223.5.5.5)
;; WHEN: Wed Feb 20 00:20:04 2019
;; MSG SIZE  rcvd: 90

[root@luffy-001 scripts]# nslookup www.baidu.com
Server:        223.5.5.5
Address:    223.5.5.5#53

Non-authoritative answer:
www.baidu.com    canonical name = www.a.shifen.com.
Name:    www.a.shifen.com
Address: 163.177.151.110
Name:    www.a.shifen.com
Address: 163.177.151.109

[root@luffy-001 scripts]# host www.baidu.com
www.baidu.com is an alias for www.a.shifen.com.
www.a.shifen.com has address 163.177.151.109
www.a.shifen.com has address 163.177.151.110
[root@luffy-001 scripts]# ping www.baidu.com
PING www.a.shifen.com (163.177.151.110) 56(84) bytes of data.
64 bytes from 163.177.151.110: icmp_seq=1 ttl=128 time=9.61 ms
64 bytes from 163.177.151.110: icmp_seq=2 ttl=128 time=9.51 ms

 




查看本地DNS緩存ipconfig /displaydns

 

網絡IP地址分類說明

按照IP地址數值範圍劃分(A B C 類  D類 組播地址 E類 預留研發使用)

  32位IP地址,按照每8位劃分


按照IP地址用途進行劃分(公網地址 私網地址)
      劃分公網和私網地址最主要的做用:就是避免IP地址資源枯竭
      常見私有地址
      10.0.0.0/8              (10.0.0.0          到    10.255.255.255)
      172.16.0.0/12        (172.16.0.0      到    172.31.255.255)
      192.168.0.0/16      (192.168.0.0    到    192.168.255.255)
      169.254.0.0/16      (169.254.0.0    到    169.254.255.255)*
    
      IP私網地址相似於咱們的身份證
      IP公網地址相似於咱們的護照信息
    
按照IP地址通信方式劃分(單播地址 組播地址 廣播地址)
      單播地址:
        就是網卡上配置的IP地址,就稱爲單播地址
      組播地址:
        通常爲D類地址,稱爲組播地址,只能在一個組內進行互相訪問通信
      廣播地址:
        就是主機位全爲1的,就稱爲廣播地址
      網絡地址
        就是主機位全爲0的,就稱爲網絡地址
        
特殊IP地址說明:
      127.0.0.1
        表示迴環地址,進行測試使用,驗證本地的TCP協議簇安裝的是否正確。ping 127.0.0.1測試網卡是夠正常
      0.0.0.0
        主機位全爲0的稱爲是網絡地址
      255.255.255.255
        主機位全爲1的稱爲是廣播地址,即向全部人發出信息
      結論:主機地址能夠範圍中,不能包含網絡地址和廣播地址
    
    總結得知:
      0和255做爲主機的地址,是不能進行分配使用的,只有0-255之間的地址能夠進行分配爲主機地址使用
      根據主機地址範圍取值,能夠引入一個公式:
      能夠分配的主機地址個數=2的N次方-2  192.168.12. == 2的8次方=256-2=254 2的16次方=65536-2=65534
      N次方的N表示有多少個主機位
      -2就表示減去網絡地址和廣播地址,剩餘的就是可分配的主機地址

網絡IP地址劃分說明

VLSN可變長子網掩碼劃分過程

IP地址劃分子網的緣由
    172.16.0.0  ==>  2的16次方(n表示B類地址的主機位個數)-2=65536-2=65534
    01. 爲了不IP地址資源浪費,會對IP地址進行子網劃分
    02. 大量的廣播包,造成廣播風暴,會嚴重影響主機性能
    03. 會對路由器產生壓力,路由的性能也會被耗盡
    IP地址劃分子網計算法
    172.16.0.0  == 前兩個8位爲網絡爲  後兩個8位爲主機位
    網絡掩碼概念:
    有32位二進制數組成,而且每8位爲一組,只要是網絡位,都會置爲1
    
    172.16.0.0 這個B類地址爲例說明:
    172-128=44-32=12-8=4
    10101100  00010000 00000000  00000000

    掩碼就是把網絡位全置爲1
    11111111  11111111 00000000  00000000   
    掩碼:
    255.0.0.0         A類掩碼信息     /8
    255.255.0.0     B類掩碼信息   /16
    255.255.255.0 C類掩碼信息   /24
    

     

將紅線右移

總結得知:
    所以能夠獲得另外一個計算公式的結論
    能夠劃分的子網數=2的N次方
    其中N表示借用的主機位個數

局域網上網原理講解

 

Linux中操做網絡命令實現系統的網絡通訊

01. 系統網卡配置參數說明
    網卡配置參數詳解
    [root@oldboy ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
    DEVICE=eth0                    <- 第一塊網卡邏輯設備名;第二塊爲eth1,
    有些系統也會以em等字符標識(centos7系統)
    TYPE=Ethernet                <- 上網類型,目前基本都是以太網
    UUID=sasd-sdasd-wqe-12       <- 通用惟一識別碼(Universally Unique Identifier);
                                   若是是vmware克隆的虛擬機沒法啓動網卡能夠去除此項。
    ONBOOT=yes                   <- 這個地方要設置爲yes,才能保證下次開機啓動激活網卡設備
    NM_CONTROLLED=no             <- 是否經過NetworkManager管理網卡設備(centos6關閉)
    BOOTPROTO=none               <- 啓動協議,獲取IP地址配置方式,有none|bootp|dhcp三個選項
    IPADDR=10.0.0.51             <- 表示本臺局域網中服務器的固定IP地址
    NETMASK=255.255.255.0        <- 子網掩碼,用來規劃網絡爲和主機位的,通常爲255.255.255.0
    DNS2=223.6.6.6               <- 第二個DNS,這裏默認會覆蓋以及優選於/etc/resolv.conf的配置文件
    GATEWAY=10.0.0.254           <- 局域網上網網關地址
    DNS1=223.5.5.5               <- 主DNS,這裏默認會覆蓋以及優先於/etc/resolv.conf的配置生效
    USERCTL=no
    PEERDNS=yes                  <- 是否確認網卡配置文件中的DNS配置優先於/etc/resolv.conf配置文件
    IPV6INIT=no                  <- 是否支持IPV6
    HWADDR=00:0c:29:10:2e:28     <- 以太網硬件地址即MAC地址,若是是vmware克隆的虛擬機
                                   沒法啓動網卡能夠堅決果斷的刪除此項。
    網卡配置生效方法:
    # 推薦:ifdown,ifup進行指定髮卡的重啓操做
    ifdown eth0 && ifup eth0  <- 重啓eth0網卡
    ifup eth0                    <- 啓動eth0網卡

    針對全部網卡進行重啓操做(工做場景慎用此命令)
    /etc/init.d/network restart 
  
02. 系統默認網關配置說明
  [root@luffy-001 scripts]# route -n 查看路由信息
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.0.0        0.0.0.0         255.255.255.0   U     0      0        0 eth0
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 eth0
0.0.0.0         10.0.0.2        0.0.0.0         UG    0      0        0 eth0
添加默認網關路由(gw是網關縮寫) route add default gw
10.0.0.254 route del default gw 10.0.0.254 添加靜態網段路由 route add -net 172.16.1.0 netmask 255.255.255.0 gw 192.168.1.1
或者 route add -net 172.16.1.0/24 gw 192.168.1.1
[root@luffy-001 scripts]# route add -net 172.16.1.0 netmask 255.255.255.0 gw 192.168.1.1
SIOCADDRT: Network is unreachable # 報錯,由於網關不存在
[root@luffy-001 scripts]# route add -net 172.16.1.0 netmask 255.255.255.0 gw 10.0.0.254
[root@luffy-001 scripts]# ping 172.16.1.0
PING 172.16.1.0 (172.16.1.0) 56(84) bytes of data.
添加靜態主機路由 route add -host 192.168.2.13 dev eth2
   route add -host 172.16.2.2 gw 10.0.0.254
03. 系統網卡多個地址配置 IP別名方式配置多地址 ifconfig eth0:1 10.0.0.100/24 up <- 配置別名IP,即虛擬IP(VIP),並啓用虛擬IP ifconfig eth0:X down <- 停掉指定別名IP配置 輔助IP方式配置多地址 ip addr add 10.0.0.13/24 dev eth0:1 ip addr add 10.0.0.14/24 broadcast 10.0.0.255 dev ethx 添加廣播地址 ip add del 10.0.0.10/24 dev ethx   須要使用 ip address show(簡寫ip a) 查看用ip addr 命令添加的IP

04. 網絡地址信息獲取命令 查看網絡狀態經常使用命令: ifconfig命令:centos 5 6系統中經常使用 用於顯示網路配置信息 ip命令:centos7系統 用於顯示網路配置信息 route命令: 查看路由配置信息
    route
-n 顯示主機名稱信息;也能夠利用hostname顯示ip地址配置信息hostname -I
    hostname(uname -n)
顯示主機的端口與服務網絡鏈接狀態,ESTABLISHED表示創建鏈接的狀態,數量即表示網絡鏈接數
netstat(ss-centos7) 顯示主機的端口與服務網絡鏈接狀態。  lsof

05. 網絡鏈接異經常用排查命令 ping命令 -c<count> 設置完成要求迴應的次數;默認會一直長ping -f 表示極限ping,ping過程當中不顯示任何信息,效率更高 -i<interval> 指定收發信息的間隔時間 -q 不顯示指定執行過程,開頭和結尾的相關信息除外 -s <數據包大小> 設置數據包的大小 tracroute/tracert命令,跟蹤網絡路徑 telnet命令 ,查看相應的服務有沒有開啓   telnet ip 端口 nmap命令 ,與telnet命令相似   nmap ip -p 端口 或者 端口-端口(20-40)
相關文章
相關標籤/搜索