發布時間: 2017-06-16 13:41:35
要使用廣播來查找,這時如果服務器在遠程網絡,而路由器又拒絕轉發廣播,那么將給我們的DHCP帶來麻煩。
要如何才能在這種情況下讓網絡正常工作呢,那就是讓路由器幫我們把廣播轉發到我們需要到達的目標網絡,這樣需要到達遠程網絡的廣播,我們稱為定向廣播,比如我們本地網絡是10.1.1.0/24的網段,我們需要將廣播發到192.168.1.0/24的網段,那么只想讓廣播在192.168.1.0/24網段發送,廣播地址為192.168.1.255,但如果直接這樣發,是到達不了192.168.1.0/24網段的,所以需要得到路由器的允許。
Directed-broadcast
每個網絡都是與路由器的某個接口相連的,這個網絡需要向遠程網絡發送廣 播,首先就是發送到路由器與之相連的接口,那么當路由器從該接口收到廣播之后, 決定是丟棄還是轉發,就在于路由器的接口是否允許定向廣播功能,如果我們需要 讓路由器幫我們轉發定向廣播,就需要在接口上手工配置directed-broadcast轉發功 能。
配置
1.配置Directed-broadcast
(1)定義ACL
R1(config)#access-list 10 permit any
注:ACL是用來告訴接口哪些數據包是可以傳遞定向廣播的,加了ACL之后,只傳遞該ACL
所有允許的數據,如果不加ACL,默認傳遞所有定向廣播數據。
(2)在接口上開啟directed-broadcast
R1(config)#int f0/0
R1(config-if)#ip directed-broadcast 10
注:IOS 12.0開始,默認接口上是關閉directed-broadcast的。(注意IOS版本,請以自身為準。)
Forward-protocol
在路由器接口上開了directed-broadcast之后,路由器便能夠將該接口上收到的 定向廣播發往相應的遠程網絡,比如從10.1.1.0/24收到的廣播發往192.168.1.255,
但是如果一個目標地址為255.255.255.255(此廣播稱為本地廣播)的DHCP廣播請 求包,需要發往DHCP服務器所在的192.168.1.0/24網絡(DHCP服務器地址為192.168.1.100),路由器會自動將該廣播包轉到 192.168.1.100嗎?答案當然是不會,那么又如何讓路由器在收到目標地址為255.255.255.255的廣播包,就知道要轉發到
192.168.1.100 呢?這就需要在路由器接口上定義ip helper-address,之后路由器就會將廣播轉成單播發到ip helper-address后面的目標IP,但是要注意的是,什么樣的 廣播才會被轉發到ip helper-address后面的目標IP,是需要根據forward-protocol來
定義的,如果forward-protocol不允許任何協議,那么路由器就不會將任何廣播發到ip helper-address后面的目標IP。
forward-protocol默認允許通過的協議為:
Trivial File Transfer (TFTP) (port 69)
Domain Name System (port 53)
Time service (port 37)
NetBIOS Name Server (port 137)
NetBIOS Datagram Server (port 138)
Boot Protocol (BOOTP) client and server datagrams (ports 67 and 68)
TACACS service (port 49)
所以默認情況下,在接口上加了ip helper-address,路由器也就只能轉發這些默認 的端口。
配置
1.配置forward-protocol
(1)定義可以轉發的協議和端口
R1(config)#ip forward-protocol udp 3001
注:默認是開啟forward-protocol的,且只能轉發默認協議和端口。
(2)在接口下配置ip helper-address
R1(config)#int f0/0
R1(config-if)# ip helper-address 192.168.1.100
注:默認是關閉ip helper-address的。
說明:通過以上配置之后,當路由器從f0/0接口上收到目標地址為255.255.255.255的廣播,并且目標為UDP 3001的廣播之后,就會轉成單播發往192.168.1.100。如 果沒有配置forward-protocol,路由器就只能轉發默認的協議和端口。
騰科技術文獻為你呈現精彩內容,助你騰飛!
下一篇: Oracle的表空間、用戶和用戶授權