計算機網路工程筆記(第五週)

vybfi發表於2020-11-19

計算機網路工程

作者:李述興
作者郵箱:hingsmy@gamail.com
文章由本人代為釋出,已徵得原作者同意

2020年10月12日


Subnetting 子網劃分

Why you need subnetting 為什麼需要子網劃分


  1. More Secure 更安全
  2. Easier to Manage 更容易管理
  3. Save IP Address 節省地址空間

子網劃分的意思就是把一個大的網路地址範圍劃分成若干個小的地址範圍,然後對這些小的地址範圍來進行分配和使用。

把一個大的地址範圍劃分成若干個小的地址範圍,這樣做主要的好處有,會讓你的網路更安全,更容易管理,而且節省很地址空間。

為什麼會讓我們的網路更安全呢?比如說我有一個公司裡面有3個部門,分別是HR 、IT跟sales。如果我把全部的主機都放在同樣一個網段裡面。比如說這個例子裡面用的是192.168.10.0這個網段裡面 會造成一個安全隱患。我的HR的主機可以隨便對IT跟sales資訊訪問,IT可以訪問其他兩個部門,那sales 也可以訪問其他兩個部門,全部都主機都可以相互進行訪問,這是安全隱患。

第二個很難管理。如果說我要對i t 部門的這些這幾臺主機做一個策略。我怎麼去找哪幾臺電腦是it 部門呢?可能我就會有一張表格裡面有記錄。pc1是什麼ip?pc2是什麼ip?pc3是什麼ip?然後他們相對應的部門,我要去找這張表。

其實在實際生活當中,時間久了之後呢,這張表就會變得非常的不準確。這就給我們的網路管理帶來了很多的麻煩。

如果我用一個網路範圍會造成這樣的不便,那麼可不可以用多個網路範圍呢?可以的,比如說 HR我分別給他192.168.10.0這個範圍。IT我分配給192.168.20.0。那麼我的 sales 192.168.30.0。那分別用了一個c 類的私有網路地址分配給這三個部門。這樣做我就保證了這三個部門他有自己的一個地址範圍,從而我就解決了安全上的一些考量。也很容易管理。hr 就是10.0,it就是20.0,sales就是30.0。

可是這樣做有一個最大的缺點就是浪費了地址空間。為了兩臺主機我就用了一個c 類的地址,那麼剩下的200多個i p 地址就不能用了。ipv4地址的地址空間是很小的,32個位元是很小的。所以如果按照這種方式來設計網路的話,如果你的網路比較大的話,可能很快就會把你的私有ip用光。

正是因為這些問題,所以才引入了這個子網劃分的概念。

子網劃分會把一個大的網路劃分成若干個小的網路,比如說192.168.10.0,可以把它劃分成三個小的網路。然後把這些小的網路呢分配給每一個部門。

從整體上來講,我只佔用了一個網段的地址空間,可是做了邏輯上的劃分,把一個網段劃分成了三個小的網段,這樣做既保證了安全性,也容易進行管理,同時我也節省了地址空間。

How to create subnets 如何建立子網


  • Take bits from the host portion of the address and reserving them todefine the subnet address instead. 從地址的主機部分借去某些位,然後保留它們以定義子網地址。
  • Create subnets will change the IP address range from Classful(Class A, B, C) to Classless. 建立子網會將IP地址範圍從有類(A,B,C類)更改為無類

ip 地址被分為了兩個部分,32個位元,前一半代表網路位,後一半代表主機位。

比如說a 類地址,網路位有8個位元,主機位有24個位元。

一個a 類地址它可以建立出多少個網段呢?二的8次方減1。這個1代表leading bit。所以只能建立出這麼多個網段。如果我還想繼續建立更多的網段,怎麼辦呢?為了建立更多的網段出來,我需要把網路位的位元數量增加。比如說我從8增加到9,就可以建立出更多的網段。

但是ip地址一共就32個位元,我想增加網路位的位元就要從我的主機位裡面借一部分出來。原本的網路位加上從原本的主機位裡面借出來的位元形成了新的網路位,使得有更多的位元可用。通過這種借位的方式,我就可以建立出更多的網段。

同時我們的主機位位元數量會減少,意味著每一個網段裡面的主可用ip 數量也相應的減少了。有類的地址 classful,是出現在我們子網劃分以前的一個概念。做子網劃分的時候,會把這個類別的這種概念給打破了。所以當我們進行了子網劃分過後,ip 地址就再也沒有類或者class 的概念了,所以ip 就會變成無類。

例子:現在有一個c 類的地址,192.168.1.0,沒有進行子網劃分。c 類的定義是24個位元代表網路位,8個位元代表主機位。主機位範圍是從1到254(0代表網段本身,255代表廣播)。現在把它劃分成兩個網路,子網劃分是從我們的主機位借一些位元給我的網路位,這樣就可以建立出更多的網段。在我們這個例子裡面怎麼借位呢?

頭24個位元已經用作網路位了,所以我要借,只能從後面這8個位元里面借。先借一個位元網路位從24個位元增加了一位到25位。

當我建立出兩個不一樣網段的時候,我的第二個網段。他的起始位,變成10000000。用計算器來看一下在二進位制裡面1 0000000換成十進位制是128。所以第二個網段起始位是128。

網路大小是從原來的0到255,現在把它劃分成了兩段。我第二段的起始為是128。所以我第一個網段的範圍就是0到127。第二個網段的範圍就是128到255。

Subnet Mask 子網掩碼


  • 192.168.1.1
  • 192.168.1.129
  • 192.168.1.254


子網掩碼他的定義是用二進位制來代表是主機位還是網路位。如果是1,那麼我就代表這一部分位元是代表網路位的。如果是0,他對應的這個位元代表的是主機位。

比如一個a類的地址的子網掩碼,是8個1,然後剩下的24個都是0,我們把它轉化成十進位制,它的子網掩碼就是255.0.0.0

進行了子網劃分後,某些主機位會轉變為網路位,這部分在子網掩碼中也會從0轉變成1,轉換為十進位制後,便可得到相應的子網掩碼。

Subnet Mask 子網掩碼



只有ip 地址加上子網掩碼,才能夠判定這些ip 地址是不是在同樣一個範圍裡面。

Classless Inter-Domain Routing (CIDR) 無類別域間路由


  • “Slash Notation”
  • 254 - /31 - 11111110
  • 255 - /32 - 11111111
  • Prefix

CIDR是另外一種子網掩碼的表達形式。通常是用slash,一個斜槓,加上一個數字來進行表示。後面的數字是代表你的網路位。

255 255 255.252對應的cidr 是什麼呢?是/30。意思是有30個網路位,剩下2個主機位。

255 255 255.0對應的 cidr 的表示方法是/24。表示有24位表示網路位。

如果進行了子網劃分,現在有一個255.255.255.192,那可以寫成 /26。通過 /26 很快的判斷出,如果他是一個 c 類網路的話,那我就是借了兩位給網路位,還剩下6位給主機位。

Subnet Mask with CIDR 子網掩碼和CIDR



子網掩碼或者cidr是表達同樣的東西的不同表示方法。

/30, /31 and /32


  • Subnet Mask 255.255.255.255 -11111111.11111111.11111111.11111111 - /32 means ahost 這個子網掩碼 /32 代表主機本身
  • /30 subnet has 2 IP for hosts(example192.168.1.0/30)/30子網有2個IP分配給主機
    • 22 = 4
    • 192.168.1.0 = network address 網段地址
    • 192.168.1.1 = host address (odd) 主機地址(奇數)
    • 192.168.1.2 = host address (even) 主機地址(偶數)
    • 192.168.1.3 = broadcast address 廣播地址
    • Tips - the lower IP is always odd, and the higher is always even 訣竅:低的地址總是奇數的,高的地址總是偶數的
  • /31 subnet has 2 IP for hosts as well(example192.168.1.0/31)-this apply to Point-to-Point link only /31 子網同樣有2個ip分配給主機,這個僅應用於點對點連線
    • 192.168.1.0 = host address (even) 主機地址(偶數)
    • 192.168.1.1 = host address (odd) 主機地址(奇數)
    • Tips - the lower IP is always even, and the higher is always odd 訣竅:低的地址總是偶數的,高的地址總是奇數的

Subnet Zero 零號子網



Router#sh running-config
Building configuration…
Current configuration : 827 bytes
!
hostname Pod1R1
!
  • 172.16.0.0/16 by default the Class B address 172.16.0.0/16 預設為B類地址
  • If network 172.16.0.0/16 is subnetted by borrowing three bits from the host portion 如果
    網路172.16.0.0/16 通過從主機部分借用3個位元來進行子網劃分
  • Subnet 172.16.0.0/19 is called Subnet Zero 子網172.16.0.0/19稱為零號子網
  • Note that this subnet address is identical to network address 172.16.0.0 請注意,此子網
    地址與網路地址172.16.0.0相同
  • Prior to IOS 12.0, by default, did not allow an IP address belonging to subnet zero to be
    configured on an interface 在IOS 12.0之前,預設情況下不允許在介面上配置屬於零號子
    網的IP地址
  • Cisco has turned this command on by default starting with Cisco IOS version 12.x
    Cisco IOS版本12.x開始,Cisco預設情況下已開啟此命令。

The class of the network subnetted and the number of subnets obtained aftersubnetting have no role in determining subnet zero. It is the first subnetobtained when subnetting the network address. 子網劃分的網路類別和子網劃分後獲得的子網數量在確定零號子網中沒有作用。它是對網路地址進行子網劃分時獲得的第一個子網。


Layer 2 Switching Basic 二層交換基礎

Repeater 中繼器


  • Repeater operates at the physical layer. Its job is to regenerate the signal over the same networkbefore the signal becomes too weak or corrupted so as to extend the length to which the signalcan be transmitted over the same network. 轉發器在物理層執行。它的工作是在訊號變得太弱或損壞之前,在同一網路上重新生成訊號,以延長訊號可以在同一網路上傳輸的長度。
  • When the signal becomes weak, they copy the signal bit by bit and regenerate it at the originalstrength. It is a 2 port device. 當訊號變弱時,他們會一點一點地複製訊號並以原始強度對其進行再生。這是一個2埠裝置。

Thinnet:
Coaxial cable used in Ethernet local area networks

乙太網區域網中使用的同軸電纜


最早的一種裝置呢叫做中繼器,它是在一個物理層工作

這個中繼器作用是把訊號給放大。因為在最開始的網路環境當中,我們採用的是匯流排拓撲。訊號資料的訊號會隨著我們線纜的長度的增長呢而衰弱。那訊號衰減怎麼辦呢?我們就設定一箇中繼器。中繼器把收到的訊號拷貝出來, 重新產生這個訊號,然後把衰減的訊號放大到以前的強度,再把這個訊號繼續傳輸下去。

Hub 集線器


A hub is basically a multiport repeater. Hubs cannot filter data, sodata packets are sent to all connected devices. Hub runs athalf-duplex only. 集線器基本上是多埠中繼器。集線器無法過濾資料,因此資料包將傳送到所有連線的裝置。集線器僅在半雙工模式下執行。


集線器有點像我們的一個小型交換機。

那麼他跟這個中繼器有什麼區別呢?中繼器一般是兩個介面的,只能連線呃兩個網段。集線器有多個介面,它是用於連線多個網段的。集線器工作在半雙工,意味著在我整個用集線器的這個網路上面的同一時間,我只能允許其中一臺呃終端向外傳送資料,其他的這些終端,在這個時候都只能接收資料。

Bridge 網橋


A bridge is a device can read the MAC addresses ofsource and destination. Bridge creates a single aggregatenetwork from multiple communication networks or networksegments. 橋是一種可以讀取源和目標的MAC地址的裝置。網橋從多個通訊網路或網段建立單個聚合網路。


網橋裡面有一張表格,裡面記錄了一些資訊,記錄了埠和埠所連線的終端裝置的一個對映關係。做了這樣一個記錄過後,當我們的這個bridge 接收到資料的時候,他就會根據這張表格進行資料轉發。

相對把集線器而言呢,這個集線器他是裡面是空白的,什麼表格都沒有的,所以他一次只能允許一個人講話。

Switch 交換機


  • Switches have many ports, bridges only have small number ofports 交換機有很多埠,網橋只有少數埠
  • Switches perform forwarding in hardware, while bridges performit in software 交換機在硬體中執行轉發,而網橋在軟體中執行轉發
  • The switch can run at full-duplex 交換機可以全雙工執行


網橋靠軟體進行資料轉發的,而交換機靠硬體進行轉發。

基本上現在市面上所有的交換機都是全雙工。全雙工就比集線器的半雙工的資料傳輸效率提高了很多。

CSMA/CD 帶檢測的載波偵聽


When a collision occurs on an Ethernet LAN, the following happens: 在乙太網LAN上發生衝突時,將發生以下情況:

  • A jam signal informs all devices that a collision occurred. 碰撞訊號會通知所有裝置發生了衝突。
  • The collision invokes a random backoff algorithm. 這個衝突會呼叫隨機退避演算法。
  • Each device on the Ethernet segment stops transmitting for a short time until itsbackoff timer expires. 乙太網網段上的每個裝置都會短暫停止傳輸,直到其退避計時器到期為止。
  • All hosts have equal priority to transmit after the timers have expired. 計時器到期後,所有主機都具有相同的優先順序進行傳輸。

CSMA/CD is operative when the device is operating in half-duplex mode to avoid thecollision. 當裝置以半雙工模式執行時,CSMA / CD執行以避免衝突。


在一個半雙工的網路裡面,如果我們有很多臺電腦,大家都在同時通訊的話,這個collision隨時都在發生,這個網路根本通不了。所以為了避免這種碰撞的發生,就引入了一種機制叫csma/cd(帶檢測的載波偵聽)

當網路處於半雙工的時候,為了避免這種collision ,csma/cd就會起作用,當兩邊同時發包產生了這個碰撞過後呢,如果我的網路當中有這個csma/cd這種機制的話,產生碰撞的這個資料包會像它的原主機傳送一個就是錯誤的資訊。

發回去之後呢,他會讓我們的a 跟d 同時隨機的產生一個倒數計時 .跟a 跟 d同時講包掉了。然後現在那麼a 和 d 就會產生一個隨機的這個倒數計時。因為這個倒數計時是隨機的,所以有一邊肯定會走的快一點,有一邊走的慢一點。

如果假設a 的倒數計時走的快點,他先到0,那麼他馬上就會向外傳送一個資料包。那麼當a 在傳送這個資料包的時候呢,由於這個d 的倒數計時還沒有到0,所以d 他不會向外傳送資料包。所以這個時候整條鏈路就是乾淨的,所以只有a 的資料包在上面跑,這樣呢就避免了這個collision 的產生。

這就是csma/cd這種技術的應用場景,現在我們的實際生產環境當中已經基本上看不到這種技術,因為我們現在的基本上所有的裝置都是跑在全雙工上面的。

Collision and Broadcast Domain 衝突域和廣播域

  • Collision domain refers to a network scenario wherein one device sends aframe out on a physical network segment forcing every other device on thesame segment to pay attention to it. This is bad because if two devices ona single physical segment just happen to transmit simultaneously, it willcause a collision and require these devices to retransmit. 衝突域是指一種網路場景,其中一個裝置在物理網路段上傳送幀,會強制同一段上的所有其他裝置對其進行關注。如果同一物理段上的兩個裝置恰巧同時傳輸,則會導致衝突並要求這些裝置重新傳輸.
  • Broadcast domain refers to a group of devices on a specific networksegment that hear all the broadcasts sent out on that specific networksegment. 廣播域是指特定網段上的一組裝置,它們可以聽到在該特定網段上發出的所有廣播。


我們為什麼會產生collision 呢?是因為我們用了一種裝置是集線器,他是工作在半雙工,所以網路當中可能會產生衝突。衝突域,就是講在我們的一個網路當中,到底有幾個區域會產生這種衝突。

一個集線器是半雙工,所以說一個集線器他就會產生一個衝突域。如果我是兩個三個或者更多的集線器連在一起,也只有一個衝突域。所以只要你的集線器跟集線器之間是直接連線的,那麼你就是一個衝突域。也就是說我這主機向外發包的時候,就算你另外一臺主機連著另外一個集線器也向外發包的時候,只要這兩個集線器是直連的,他們最終都會產生一個碰撞,都會掉包。交換機每一個埠就是一個衝突域。交換機連線交換機也算一個衝突域。

如果我們的網路當中有集線器,不管你的集線器有多少個。他們只要是連在一起的,那麼他們就屬於一個廣播域。

如果我們的網路中有交換機,一臺交換機預設只有一個廣播域。

Collision and Broadcast Domain Practice 衝突域和廣播域練習


  • Two broadcast domains, two collision domains 兩個廣播域,兩個衝
    突域(圖1)
  • One broadcast domain, seven collision domains 一個廣播域,七個衝
    突域(圖2)

  • One broadcast domain, four collision domains. 一個廣播域,四個衝突
    域。(圖1)
  • Three broadcast domains, nine collision domains 三個廣播域,九個
    衝突域。(圖2)

Ethernet Frames (Data Link Layer) 乙太網幀(資料鏈路層)


The function of Ethernet stations is to pass data frames between eachother using a group of bits known as a MAC frame format. 乙太網站的功能是使用一種稱為MAC幀格式的一組位元在彼此之間傳遞資料幀。

  • Destination Address: a broadcast is all 1s - all Fs in hex - and is sent
    to all devices 目的地址:廣播全為1,或全為F(十六進位制),併傳送
    到所有裝置
  • Type field: IP, or 08-00 (0x800 in hex) 型別欄位:IP,08-00(十六進
    制的0x800)

Ethernet Frames (Physical Layer) 乙太網幀(物理層)

  • 10Base-T (IEEE 802.3) 10 Mbps using category 3 unshielded twisted pair (UTP) wiring for runs up to 100 meters.Unlike with the 10Base-2 and 10Base-5 networks, each device must connect into a hub or switch, and you can haveonly one host per segment or wire. It uses an RJ45 connector (8-pin modular connector) with a physical star topologyand a logical bus. 10Base-T(IEEE 802.3)10 Mbps,使用3類非遮蔽雙絞線(UTP)佈線,可執行100米。與10Base-2和10Base-5網路不同,每個裝置必須連線到集線器或交換機,並且每個網段或線路只能有一個主機。它使用具有物理星形拓撲結構和邏輯匯流排拓撲結構的RJ45聯結器(8針模組化聯結器)。

  • 100Base-TX (IEEE 802.3u) 100Base-TX, most commonly known as Fast Ethernet, uses EIA/TIA category 5, 5E, or 6UTP twopair wiring. One user per segment; up to 100 meters long. It uses an RJ45 connector with a physical startopology and a logical bus. 100Base-TX(IEEE 802.3u)100Base-TX,通常稱為快速乙太網,使用EIA / TIA 5類、超5類或6類的 UTP兩對佈線。每個網段只有一個使用者;長達100米。它使用具有物理星形拓撲結構和邏輯匯流排拓撲結構的RJ45聯結器。

  • 100Base-FX (IEEE 802.3u) Uses fiber cabling 62.5/125-micron multimode fiber. Point-to-point topology; up to 412meters long. It uses ST and SC connectors, which are media-interface connectors. 100Base-FX(IEEE 802.3u)使用62.5 / 125微米多模光纖佈線。點對點拓撲;長達412米。它使用ST和SC聯結器,它們是媒體介面聯結器。 1000Base-CX (IEEE 802.3z) Copper twisted-pair, called twinax, is a balanced coaxial pair that can run only up to 25meters and uses a special 9-pin connector known as the High Speed Serial Data Connector (HSSDC). This is used inCisco’s new Data Center technologies. 1000Base-CX(IEEE 802.3z)銅雙絞線,稱為twinax,是一種平衡同軸線對,只能執行25米,並使用稱為高速序列資料聯結器(HSSDC)的特殊9針聯結器。思科的新資料中心技術中使用了此功能。

  • 1000Base-T (IEEE 802.3ab) Category 5, four-pair UTP wiring up to 100 meters long and up to 1 Gbps. 1000Base-T(IEEE 802.3ab)5類,四對UTP佈線,最長100米,最高1 Gbps。

  • 1000Base-SX (IEEE 802.3z) The implementation of 1 Gigabit Ethernet running over multimode fiber-optic cableinstead of copper twisted-pair cable, using short wavelength laser. Multimode fiber (MMF) using 62.5- and 50-microncore; uses an 850 nanometer (nm) laser and can go up to 220 meters with 62.5-micron, 550 meters with 50-micron.1000Base-SX(IEEE 802.3z)使用短波長鐳射,通過多模光纖電纜而不是銅質雙絞線電纜執行1Gbps乙太網。使用62.5和50微米纖芯的多模光纖(MMF);使用850奈米(nm)的鐳射,在62.5微米時可達220米,在50微米時可達550米。

  • 1000Base-LX (IEEE 802.3z) Single-mode fiber that uses a 9-micron core and 1300 nm laser and can go from 3kilometers up to 10 kilometers. 1000Base-LX(IEEE 802.3z)單模光纖,使用9微米纖芯和1300 nm鐳射,距離從3公里到10公里。

  • 1000Base-ZX (Cisco standard) 1000BaseZX, or1000Base-ZX, is a Cisco specified standard for Gigabit Ethernetcommunication. lOOOBaseZX operates on ordinary single-mode fiber-optic links with spans up to 43.5 miles (70 km).1000Base-ZX(Cisco標準)1000BaseZX或1000Base-ZX是Cisco針對千兆位乙太網通訊指定的標準。 1000BaseZX在普通的單模光纖鏈路上執行,跨度可達43.5英里(70公里)。

  • 10GBase-T (802.3.an) 10GBase-T is a standard proposed by the IEEE 802.3an committee to provide 10 Gbpsconnections over conventional UTP cables, (category 5e, 6, or 7 cables). 10GBase-T allows the conventional RJ45used for Ethernet LANs .10GBase-T(802.3.an)10GBase-T是IEEE 802.3an委員會提出的標準,旨在通過常規UTP電纜(5e,6或7類電纜)提供10 Gbps連線。 10GBase-T允許將常規RJ45用於乙太網LAN


相關文章