当前位置:IT快活林→网上冲浪电脑医院

dhcp server 可不可以跨网段来工作

作者:本站整理   发布时间:2008-4-19 0:17:07


现在有一个局域网,两个vlan一个是9.186.96.0/24,一个是9.186.10.0/24,两个vlan通过9.186.96.7 9.186.10.7两个getway可以互访,现在在9.186.96.0里有一个DHCP server (red4.5), 现在的问题是这个DHCP SERVER可以为9.186.10 服务吗?-----我也想知道,貌似要配一个dhcp中继,-----在2003下好像可以,但在linux里还没用过-----可以,不过要在Gateway上配置DHCP中继(DHCP Relay)。-----可以的,通过linux的dhcp relay,可以夸vlan . 我这几天也在做这方面的测试,测试目前还有一些问题,楼主可以参考下面的链接文章,如果楼主成功了到时记得分享一下哈。截取转自: http://www.study-area.org/linux/linuxfr1.htm (有拓扑图可以参照的) 設定 dhcp relay 透過 DHCP 可以簡化大量的 IP 設定工作﹐因為只需在 server 上設定就好﹐無需跑到每一台機器上亂忙一通﹐實在是網路管理員的一大利器﹗ 如果您的網路夠大﹐那可能會跨好幾個子網路﹐而且各子網路在物理連線上都是相互分隔﹑透過 router 連接的。我們都知道 DHCP 的運作初期主要靠廣播形式進行﹐如果經過 router 的話﹐是沒辦法將廣播送到另外的子網路去的。這樣的話﹐您或許需要在每一個子網路上面設定獨立的 DHCP server﹐然而﹐您是否想將所有設定都集中在單一的伺服器上呢﹖ 答案是﹕可以的﹐但需要借助 DHCP RELAY 功能。只要您的系統裝有 dhcp 套件﹐裡面就帶有 dhcrelay 工具了﹐所以不用擔心。但是在我的實作上﹐花了一整天都搞不定﹐後來臨睡覺前收到朋友 Song 兄 的建議﹐第二天起來﹐一試就成功了﹗故事浪漫﹑場面感人﹑過程曲折﹑情節離奇﹑主角神勇 .... 好開心哦 您是否被比這個故事吸引了呢﹖是否也想玩玩看呢﹖是的話﹐就不要錯過下面的精彩內容了。 大家或許已經在“網路設定”中看過我家裡面的網路環境了﹕ 然而﹐正因為這個環境的緣故﹐竟然讓我浪費了一天時間﹗前面所教的設定﹐都在我那台 rh71 的機器上進行﹐它同時也作為 3 個子網路的 gateway 。為了測試﹐我先將 rh71 的 dhcpd 服務停掉﹐然後將整個 dhcpd.conf 設定檔原封不動的搬到 mdk 上面﹐並且成功的啟動 dhcpd 服務。 然後我在 rh71 上啟動 dhcp-relay 功能﹐很簡單﹕ dhcrelay -i eth1 -i eth2 192.168.100.24 先解釋一下這個命令吧﹕如果機器上有多張界面﹐採用 -i 參數則讓 dhcp relay 僅向指定的界面提供 DHCP 服務﹔如果沒有 -i 參數﹐則向所有界面提供服務。因為我的 eth0 和新的 DHCP server (mdk) 同一個網路﹐所以無需為 eth0 提供 relay﹐於是我就用 -i 向 eth1 和 eth2 連接的網路提供服務而已。 不管您有沒有指定界面﹐您必須指定 DHCP server 的 IP 位址或主機名稱﹐可以用空白鍵分隔而羅列多台伺服器。 好了﹐我原本以為這樣設定就可以跑到另外的子網路那邊測試了。誰知道怎麼弄都不行﹐不管 client 那邊用 windows 還是 linux 都失敗。我在所有的機器上打開 tcpdump 來抓封包﹐發現另外那兩個界面(10.0.1.1 和 10.0.1.131) 一直在送 192.168.100.24 的 arp 查詢﹐而且一直都失敗﹐更可恨的是﹐在它的 arp table 上面本來就有這個記錄了﹗搞不明白為什麼還要查詢﹐但又不在正確的界面上送﹐而且﹐在 mdk 上面卻沒收到半個封包﹐別說 dhcp discover 了(順利的應該是這個)﹐連 arp query 的也沒收到﹗ 那我開始懷疑是 dhcrelay 的問題了﹐因為我將它的 process 關閉之後﹐就不會出現 arp 問題了﹐但當然囉﹐client 那邊也不可能獲得 dhcp offer 。於是耗了大半天上網找資料﹐isc﹑google﹑openfind 都翻遍了﹐過濾出來的文章只有很少提到這個問題﹐而且有介紹 dhcp relay 的文章都說得很輕鬆﹐似乎他們都沒有任何問題似的﹗ 此刻﹐突然記得朋友 Song 兄曾經在新聞組上提到過 dhcp relay 的文章(雖然我找不回來是哪篇﹖)﹐於是在黑暗中燃起一線希望﹐寫了封信去問他。Song 兄 很快就回信了﹐並給了我一些意見﹐我也一一照辦了﹐但還是不行 >_< 於是﹐我也將這個測試丟下了﹐先將 remote boot (也就是後面的文章) 寫起來再說。哈~~ Song 兄 這位朋友真夠意思﹐既然為著我的事情念念不忘﹐在睡覺前來了一封 email﹐叫我不要在 rh7.1 上執行 dhcrelay﹐因為不知道是否因為它同是 router 的關係﹐云云。嗯﹐這時候我的文章寫得正濃﹐也沒急著試﹐於是就將測試放到第二天了。 (鏡頭移到床頭燈﹐然後突然熄滅... 接下來畫面上以打字體伴隨打字聲陸續顯示出“第 二 天”這幾個字....) 我於是將 acer 這台 notebook 接到 10.0.1.128/27 這個子網路去﹐將 rh 7.1 的 dhcrelay 關閉﹐然後在 lp64 上面執行﹕dhcrelay 192.168.100.24 (之前我當然是 ping 過可以連線的)。然後轉到 client 上﹐然後... 奇跡就出現了﹗雖然 arp query 還是會送﹐但卻能正確的從 rh71 這台 gateway 上獲得 reply ﹐當然﹐我的 dhcp client 也能成功的抓到 server 的分配﹗﹗這個從 tcpdump 和 server 的 log 上面就可以得到驗證﹐然後再修改一下設定﹐測試用 host 發放固定 IP 也沒問題~ 呵 太開心啦﹗(真可恨旁邊沒人給我 give me five! ) 故事講完了。 ^_^[ 本帖最后由 cmhuaer 于 2007-7-20 11:30 编辑 ]-----QUOTE:原帖由 mbmf1982 于 2007-7-20 10:48 发表 screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" alt="" />在2003下好像可以,但在linux里还没用过 老兄,你说windows可以,说说具体如何做,我可以先用windows 试试。-----完全可以,LS的都说了要配置中继。-----QUOTE:原帖由 ssffzz1 于 2007-7-20 16:57 发表 screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" alt="" />完全可以,LS的都说了要配置中继。 实验结果证实是可以的,我们下午配成功了, 在内网网关上使用" dhcrelay dhcpserverIP ”, dhcpserver放在dmz区, 内部多个vlan可以正确从dmz区获得动态IP。-----那么,同样的在有cisco layer3 switch的环境中只要在cisco的每个vlan中配置 ip helper address 指向linux dhcp server 再在linux dhcp server上设置多个scope即可吧?-----先在DHCP Server配置好多个Scope,配置好每个Scope Options然后在layer 3 Switch 配置DHCP Relay,具体视不同产品有所区别!
》热 点 关 注