写给非网工的CCNA教程(1)IP地址和MAC地址
? ? 網(wǎng)絡,我們每天都在接觸,每天都在通過網(wǎng)絡獲取我們想要的信息。再進一步講,我們利用我們的手機或者電腦,通過有線網(wǎng)或者Wi-Fi或者3G/4G網(wǎng),連接到電信、聯(lián)通、移動等運營商的網(wǎng)絡,最終連到各大公司的網(wǎng)站服務器,獲取我們想要的信息。
? ? 可見在網(wǎng)絡中,涉及到的公司或企業(yè)之多,而每家公司或企業(yè)的設備類型之多、設備數(shù)量之多。為了唯一標識這些設備,我們引入了IP地址;為了解決這些設備的通信問題,我們引入了IP協(xié)議。
?
1 IP地址
? ? ?在上文中,我們提到IP地址,也了解到IP地址是用來唯一標識不同的設備的,就像我們的手機號,不能重復。我們的手機號是11位十進制數(shù)字標識,那我們的IP地址呢?
? ? IP地址使用32個bit的二進制數(shù)來表示I的,每8個bit一組,所以有4組,像這樣
XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXXX = 1 or 01.1 IP地址的表示:點分十進制
? ? 如果用二進制來寫的話,要寫32個,豈不很煩。所以我們一般把這二進制,按照8個bit一組翻譯成十進制數(shù)據(jù)。組與組之間用點號(.)區(qū)分,也就是我們常說的點分十進制表示IP地址,像192.168.1.9,47.95.47.253等等。
? ? 由于每一組二進制是8個bit,那么不難推算出每組十進制的取值訪問是0---255,所以IP地址取值范圍是0.0.0.0---255.255.255.255。
1.2 IP地址分類
? ? 我們知道了IP地址的范圍是0.0.0.0--255.255.255.255,可以計算出來IP地址的個數(shù)為2^32,大概42億個.。這么多IP地址,用途各不一樣,互聯(lián)網(wǎng)IP地址分配機構IANA對這42億個IP地址按照用途分配如下。
| 分類 | IP地址 | 作用 |
| 特殊地址 | 0.0.0.0 | 當設備沒有IP地址,需要發(fā)送DHCP請求報文時,以此地址為源地址 |
| 廣播地址 | 255.255.255.255 | 廣播數(shù)據(jù)時,用此地址做目的地址,不過廣播會被局限在一個網(wǎng)段內,不可能是整個互聯(lián)網(wǎng) |
| 私有地址 | 10.0.0.0 -- 10.255.255.255 172.16.0.0 -- 172.31.255.255 192.168.0.0 -- 192.168.255.255 | 用于每個公司或者機構內部通信,不會出現(xiàn)在互聯(lián)網(wǎng)上 |
| 環(huán)回口地址 | 127.0.0.0 -- 127.255.255.255 | 用于測試網(wǎng)卡是否正常使用,不會出現(xiàn)在網(wǎng)絡上,只會在設備內部 |
| 特殊地址 | 169.254.0.0 -- 169.254.255.255 | 當設備經過DHCP報文交互后,仍然沒有拿到IP地址,則從此段地址內隨機生成一個 |
| 組播地址 | 224.0.0.0 -- 239.255.255.255 | 當需要向一組設備發(fā)送數(shù)據(jù)時,用組播地址為目的地址,加入到該組播組的設備都會收到 |
| 公網(wǎng)地址 | 除上面以外的地址 | 這部分地址才是真正互聯(lián)網(wǎng)上通信的地址,一般由運營商使用和再分配 |
1.3 子網(wǎng)掩碼
? ? ?上一級是從IP地址用途去分類的,在實際使用中,我們往往把IP地址劃分成兩個部分,網(wǎng)絡號和主機號,而主機號又被劃分成子網(wǎng)號和真正主機號,如下圖所示。
? ? 從上圖可知,我們32個bit的IP地址被劃分成了網(wǎng)絡號、子網(wǎng)號和主機號,為何要這么做呢?
? ? 打個比方我們的手機號總共11位,前面三位一般代表移動、聯(lián)通、電信三家運營商,緊跟著的四位一般代表手機號歸屬地,最后四位代表歸屬地下具體用戶.。同樣的道理,我們的IP地址,前面的網(wǎng)絡號和子網(wǎng)號代表具體網(wǎng)段,后面的主機號代表該網(wǎng)段內的設備。
? ? 那到底前面的多少個bit代表網(wǎng)段(或者子網(wǎng))呢,這就需要我們的子網(wǎng)掩碼上場了。 子網(wǎng)掩碼也是32個bit,不過前面的是一連串的1,后面的都是0,并且也可以用點分十進制表示。例如前面10個bit全是1,那么后面為0的則是32-10=22個bit,如下所示。
二進制: 1111 1111. 1100 0000. 0000 0000. 0000 0000十進制: 255. 192. 0. 0? ? 因此我們可以推算出子網(wǎng)掩碼總共多少個,答案是33個。為何是33個呢,而不是像IP地址一樣是2^32=42億個?很簡單,就是因為1或者0是連續(xù)的,而且前面連續(xù)的都是1,后面則是全0。前面連續(xù)為1的可能無非就是:0個連續(xù)1,、1個連續(xù)1、2個連續(xù)1、3個連續(xù)1 ..... 32個連續(xù)1。如下表,我們列舉所有32個子網(wǎng)掩碼的具體表示形式。? ?
| 前面連續(xù)1的個數(shù) | 子網(wǎng)掩碼表示 | 舉例 | 舉例 |
| 0 | 0.0.0.0 | 192.168.1.1/0 | 192.168.1.1/0.0.0.0 |
| 1 | 128.0.0.0 | 192.168.1.1/1 | 192.168.1.1/128.0.0.0 |
| 2 | 192.0.0.0 | 192.168.1.1/2 | 192.168.1.1/192.0.0.0 |
| 3 | 224.0.0.0 | 192.168.1.1/3 | 192.168.1.1/224.0.0.0 |
| ........... | ........... | ........... | ........... |
| 29 | 255.255.255.248 | 192.168.1.1/29 | 192.168.1.1/255.255.255.248 |
| 30 | 255.255.255.252 | 192.168.1.1/30 | 192.168.1.1/255.255.255.252 |
| 31 | 255.255.255.254 | 192.168.1.1/31 | 192.168.1.1/255.255.255.254 |
| 32 | 255.255.255.255 | 192.168.1.1/32 | 192.168.1.1/255.255.255.255 |
? ? 到現(xiàn)在為止,我們已經有了IP地址和子網(wǎng)掩碼的基礎,也清楚通過子網(wǎng)掩碼,我們可以知道一個IP地址的子網(wǎng)編號、以及該子網(wǎng)內的主機編號。
? ? 例如 192.168.1.1/24。可算出子網(wǎng)內主機編號為192.168.1.0、192.168.1.1、192.168.1.2 .....192.168.1.254、192.168.1.255。
? ? 我們人為規(guī)定主機編號內第一個為子網(wǎng)的編號,如本例中的192.168.1.0。
? ? 主機編號內最后一個代表該子網(wǎng)內所有主機,如192.168.1.255。
? ? 其他的則為真正的主機,如192.168.1.1---192.168.1.254。
1.4?網(wǎng)段
? ? 在網(wǎng)絡通信中,我們一般經常提到網(wǎng)段這個名詞,到底啥意思呢?其實啊,網(wǎng)段就是我們前面提到的子網(wǎng)。給定一個IP地址和子網(wǎng)掩碼,我們怎么知道這個IP地址屬于哪個網(wǎng)段呢?下文舉個例子來說明。
? ? 例子1:判斷 192.168.1.200/24屬于哪個網(wǎng)段?
? ? 我們先把點分十進制的192.168.1.200轉換成二進制【1100 0000. 1011 1000. 0000 0001. 1100 1000】,然后與24個連續(xù)的1【1111 1111. 1111 1111. 1111 1111. 0000 0000】進行邏輯與運算,最后轉換成十進制即可。
? 1100 0000. 1011 1000. 0000 0001. 1100 1000 192.168.1.200 &?1111 1111. 1111 1111. 1111 1111. 0000 0000 /24 =============================================1100 0000. 1011 1000. 0000 0001. 0000 0000 轉換成十進制192. 168. 1. 0 /24? ? 因此192.168.1.200/24對應的網(wǎng)段/子網(wǎng)為192.168.1.0/24。
? ? 例子2:判斷 192.168.1.200/26屬于哪個網(wǎng)段?
? ? 我們先把點分十進制的192.168.1.200轉換成二進制【1100 0000. 1011 1000. 0000 0001. 1100 1000】,然后與26個連續(xù)的1【1111 1111. 1111 1111. 1111 1111. 1100 0000】進行邏輯與運算,最后轉換成十進制即可。
? 1100 0000. 1011 1000. 0000 0001. 1100 1000 192.168.1.200 &?1111 1111. 1111 1111. 1111 1111. 1100 0000 /26 =============================================1100 0000. 1011 1000. 0000 0001. 1100 0000 轉換成十進制192. 168. 1. 192 /26? ? 因此192.168.1.200/26對應的網(wǎng)段/子網(wǎng)為192.168.1.192/26。?
?
2 MAC地址
? ? 如果仔細觀察每塊網(wǎng)卡的屬性,除了會看到IP地址外,還會發(fā)現(xiàn)MAC地址,這MAC地址是干嘛的呢?
? ? 先說MAC地址的格式, MAC地址是用48個bit的二進制表示的,8個bit一組、共有6組。為了方便書寫,我們用冒分十六進制來表示。也就是組內用十六進制表示,組與組之間用冒號(:)分割。不難看出MAC地址的范圍是00:00:00:00:00:00--ff:ff:ff:ff:ff:ff。
? ? MAC地址是冒分十六進制表示的48個bit,其中前面24個bit(叫OUI)表示設備廠商,后面24個bit表示設備廠商制造的設備編號。因此每個設備廠商制造的設備都有一個唯一的編號,不會重復。另外要注意一點,在這48個bit第8個bit如果為1,則表示組播地址,為1則表示單播地址。
? ? 可見MAC地址也是用來唯一標識設備(網(wǎng)卡或者其他設備),MAC地址一般出廠的時候就已經在設備芯片內部寫死了,不會更改。
?
3 有了IP地址,為何還有MAC地址
? ? 前文到了唯一標識網(wǎng)絡中的設備有IP地址,還有MAC地址,這不沖突嗎?
? ? 在這之前,我們得搞清楚我們平時所說的網(wǎng)絡,,其實是指以太網(wǎng),,由于使用者甚多,所以以太網(wǎng)就代表網(wǎng)絡。嚴格來說以太網(wǎng)只是網(wǎng)絡的一種,除了以太網(wǎng),我們還有其他類型的網(wǎng)絡,,比如Wi-FI、移動通信中的2G/3G/4G/5G、P2P網(wǎng)還有被淘汰的ATM等等.
? ? 這些網(wǎng)絡為了標識不同的網(wǎng)絡節(jié)點,都有自己一套地址體系。以太網(wǎng)就是用的MAC地址,Wi-Fi其實也是也是用MAC地址,其他類型的網(wǎng)絡可不是MAC地址,具體的可以自行查閱相關資料。
? ? 我們的互聯(lián)網(wǎng),可是把這些不同類型的網(wǎng)絡連接在一起,因此有必要重新弄套地址體系,要求所有連到互聯(lián)網(wǎng)上的網(wǎng)絡都得支持,要不然夸網(wǎng)絡類型通信豈不亂套? 這套地址體系就是我們所說的IP地址。
? ? 打個比方,IP地址就像護照,全球統(tǒng)一格式;MAC地址就像我們國家的身份證,僅僅在我們國家有效。如果你只是在國內活動(以太網(wǎng)內通信),身份證(MAC地址)就可以了。?但你要出國(跨網(wǎng)絡通信),那就得護照(IP地址)才行。
總結
以上是生活随笔為你收集整理的写给非网工的CCNA教程(1)IP地址和MAC地址的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 前端学习(624):小结
- 下一篇: 技术方案:网吧无盘存储解决方案(转)