如何正確理解通配符掩碼?

在訪問控制列表中用到了通配符掩碼,目的是查詢一個範圍內的地址。如何更通俗的理解通配符掩碼,請大家指教,萬分感謝。


本故事純屬虛構,如有雷同純屬巧合。


拿身份證編號來講故事,以上海為例:


310000 這六位數屬於上海的代號,其中:

1 上海市 310000

2 上海市 市轄區 310100

3 上海市 黃浦區 310101

4 上海市 盧灣區 310103

5 上海市 徐匯區 310104

6 上海市 長寧區 310105

7 上海市 靜安區 310106

8 上海市 普陀區 310107

9 上海市 閘北區 310108

10 上海市 虹口區 310109

11 上海市 楊浦區 310110

12 上海市 閔行區 310112

13 上海市 寶山區 310113

14 上海市 嘉定區 310114

15 上海市 浦東新區 310115

16 上海市 金山區 310116

17 上海市 松江區 310117

18 上海市 青浦區 310118

19 上海市 南匯區 310119

20 上海市 奉賢區 310120

21 上海市 縣 310200

22 上海市 崇明縣 310230


現在上海迪斯尼為了回饋上海人民,每月1號對持 310101 身份證號碼的黃浦區市民半價優惠,每次入園買票時,只要拿著一個掩碼標尺,最左邊的六位數的長度是透明的,剩下的為不透明的,往身份證一蓋,對齊最左邊的六位數,如果是310101那就符合優惠條件。


掩碼(Mask),原始意思是遮蓋,在計算機網路里就是遮住不感興趣的部分,只留下感興趣的部分。


繼續上面的故事,後來以上促銷很麻煩,於是重新使用了一個五位數的掩碼:31010,什麼意思呢?凡是身份證號碼是以 31010開頭都滿足優惠條件,那意味著 310101-310109這九個區市民都可以參加優惠活動,假定優惠活動為每月的上半月。


那剩下的十幾個區不願意,哭著喊著也要優惠,那也簡單,用31011這個全新五位數掩碼就可以了,那 310110 -310119 這十個區就被囊括其中,可以參加下半月的優惠活動。


奉賢區310120 與 崇明縣310230 以上兩個掩碼都沒有覆蓋,對於他們來說只能分別用6位數的掩碼才可以,對於他們每月任何時候都可以參加優惠活動,但僅限一次,至此皆大歡喜。


每逢國慶假日,所有上海市民都可以參加優惠活動,那用幾位的掩碼呢?很簡單對吧,310就可以了。


講完了故事,再來回答正題。

計算機網路的掩碼和以上的故事類似,如果一個分公司的區域網網段是10.1.0.0/16,需要通過路由協議來通告給公司總部,那如何通告這個網段呢?

10.1.0.0 255.255.0.0(網段掩碼)

以上用掩碼來完成網段的匹配,那通配符掩碼一般用於什麼地方呢?用於匹配主機(host)!

如果一個公司規定只有 IP 地址位於 10.1.0.0/16 的主機才可以上網,那如何創建這個ACL呢?

允許 10.1.0.0 0.0.255.255(通配符掩碼)

這個ACL的意思是:只要IP地址位於 10.1.0.0 - 10.1.255.255的主機就可以允許上網,否則不允許。


推薦閱讀:

虛擬機使用NAT連接網路,數據流量是否會攜帶物理機的信息?
為什麼沒有 IPv5 ?
僅有QQ號如何查詢對方IP?
什麼是外網IP和內網IP?
靜態ip和動態ip的區別是什麼?

TAG:計算機網路 | IP地址 |