今天遇到這樣的問題,0.0.0.0代表什么?
參考RFC文檔:
0.0.0.0/8 - Addresses in this block refer to source hosts on “this”
network. Address 0.0.0.0/32 may be used as a source address for this
host on this network; other addresses within 0.0.0.0/8 may be used to
refer to specified hosts on this network
根據RFC文檔描述,它不只是代表本機,0.0.0.0/8可以表示本網絡中的所有主機,0.0.0.0/32可以用作本機的源地址,地址塊0.0.0.0/32僅含有一個地址,被保留用於某主機需要發送一個IPv4分組,但不知道自己地址的情況下。通常用於主機正在啟動,主機為了獲取自己的地址,向引導DHCP服務器發送一個IPv4分組,以全0的地址作為源地址,受限廣播地址作為目的地址。
在路由器配置中可用0.0.0.0/0表示默認路由,作用是幫助路由器發送路由表中無法查詢的包。當到達了一個知道如何到達目的地址的路由器時,這個路由器就會根據最長前綴匹配來選擇有效的路由。子網掩碼匹配目的IP地址而且又最長的網絡會被選擇。用無類別域間路由標記表示的IPv4默認路由是0.0.0.0/0。因為子網掩碼是/0,所以它是最短的可能匹配。 當查找不到匹配的路由時,自然而然就會轉而使用這條路由。如果設置了全零網絡的路由,路由表中無法查詢的包都將送到全零網絡的路由中去。嚴格說來,0.0.0.0/0已經不是一個真正意義上的IP地址了。它表示的是這樣一個集合:所有未知的主機和目的網絡。這里的“未知”是指在本機的路由表里沒有特定條目指明如何到達綜合起來可以說0.0.0.0/0表示整個網絡。它的作用是幫助路由器發送路由表中無法查詢的包。如果設置了全零網絡的路由,路由表中無法查詢的包都將送到全零網絡的路由中去。
原文鏈接:https://blog.csdn.net/wdkirchhoff/article/details/44629099