免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 13627 | 回复: 15
打印 上一主题 下一主题

关于dhcp中继问题,请教!非常感谢!! [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-04-03 22:18 |只看该作者 |正序浏览


基本架构如下:

dhcp server <--------------> eth0(router)eth1 <---------------> dhcp client

router是openwrt平台,使用isc-dhcp-relay做dhcp中继功能
dhcp client是一台带dhcp客户端的pc

配置如下
dhcp server开启dhcp服务,ip地址:192.168.1.1
router eth0接在与server已给子网,通过dhcp方式获取ip地址:192.168.1.10
router eth1配置为静态ip地址为192.168.3.1,桥接类型,会生成一个br-lan的接口,与client在同一子网

期望达成的是:
dhcp client可以获取到dhcp server分配的ip地址:192.168.1.x

输入命令 dhcrelay -i br-lan 192.168.2.1后,dhcp client开始尝试获取ip地址

在server与router之间抓包显示:
    1) router通过eth0转发discover给server,src地址为192.168.1.10,dst地址为192.168.1.1,并且是单播
           2) server接收到之后会广播offer包,可以看到该广播包已经分配了正确的ip地址(此处正常情况是否应为单播,目的地址为eth0接口地址或者eth1接口地址?)        
          
在router与client直接抓包显示:
                1)client不断发discover报文,没有收到router转发的offer
               
找不到原因了,请问有什么建议想法分享一下吗?谢谢!  

论坛徽章:
0
16 [报告]
发表于 2014-08-06 15:27 |只看该作者
回复 13# goodlucktoxx


    同网段的dhcp中继需要怎么设置呢?

论坛徽章:
0
15 [报告]
发表于 2014-08-06 15:24 |只看该作者
回复 10# rainfinity


    我看http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=2132799这篇帖子里写的,貌似可以实现同网段及不同网段的dhcp中继,不知到底可以成功么?望解答,谢谢!

论坛徽章:
0
14 [报告]
发表于 2014-08-06 15:15 |只看该作者
回复 1# running910


    楼主好!不知你最后实现了么?最近我也在研究这个问题。想实现同网段的dhcp中继。

论坛徽章:
0
13 [报告]
发表于 2014-06-24 17:32 |只看该作者
我记得我成功过,没记错的话,亲,你少加了一条路由。

论坛徽章:
1
技术图书徽章
日期:2014-04-28 13:16:45
12 [报告]
发表于 2014-04-26 10:50 |只看该作者
1. 先来科普一下DHCP是如何工作的

    DHCP client 通过broadcast 方式寻找server, server如果看这个discovery, 会回应offer , client 会发request, server 回应ACK.

2. 为什么需要dhcp relay

   在大多数的情况下, server和client不再一个broadcast domain, 即不再一个网段里,需要gateway 将这个broadcast dhcp discovery转换成unicast 方式, 然后发给server, server将offer  unicast 发给gateway, gateway 再将offer转换发给client, 下面步骤以此类推, gateway 就是dhcp relay 的角色

3. 为什么需要option 82

  一些非法用户, 不断伪造MAC地址, 可以将SERVER pool 地址池全耗光, 这样合法的用户就没有地址可用, 这也是DOS攻击的一种, 所以需要relay 加上 client id 和remote id 来辨识合法用户, 这样server就可以根据  client id + remote id + MAC 来分配地址, 而不是单纯的根据MAC地址来分配了.

4. 如果client 来自于网络的多个subnet, server 如何决定分配特定的地址给特定的client

比如一个来自10.1.1.0/24 client1 , 一个10.1.2.0/24 client2, serer如何给他们分配合适的地址, 这个机关就在dhcp relay 上, dhcp relay 用哪个地址作为relay agent的地址, server 就知道该client来自于哪个subnet, 分配给和dhcp relay 同一个网段的地址.

看完我的文章, 你会明白你的部署方式是永远都不会成功的, 你可以按照我的建议做,如果成功你会明白你错在哪里.

论坛徽章:
0
11 [报告]
发表于 2014-04-24 11:24 |只看该作者
本帖最后由 running910 于 2014-04-24 11:26 编辑

谢谢您特意做了个图,:wink: 这个图片与我需要的效果我是不是可以理解:

     dhcp server <------------> eth0 (router) br-lan <------------>dhcp client

    eth0:     192.168.2.2
    br-lan:   192.168.1.10               

    我不理解dhcp server两个IP地址是什么意思?我需要的效果应该是eth0直接接在一个普通的dhcp server,似乎实现不了图中的所画的
dhcp server,您的强调的是DHCP中继的eth0与dhcp client不能同属一子网吧?但现在要达成的效果就是需要dhcp client应该与eth0同
属一子网,而br-lan的IP地址,我觉得有没有都没关系,因为我希望达成的效果就是:连接在br-lan的终端可以直接获取dhcp server分配的
ip地址,但通过中继时,中继需要给它加上option 82字段,并且中继要去掉dhcp server回应报文中的option 82字段,所以连接上后,dhcp
client我觉得应该是与eth0同属一子网的。

    请问您觉得可以做到吗?O(∩_∩)O再次非常感谢!

回复 10# rainfinity


   

论坛徽章:
1
技术图书徽章
日期:2014-04-28 13:16:45
10 [报告]
发表于 2014-04-22 16:41 |只看该作者



画了一张图,希望对你有帮助.

论坛徽章:
0
9 [报告]
发表于 2014-04-22 14:34 |只看该作者
不会工作?我不太理解噢。我这个不用桥接是因为我还要利用DHCP中继给添加option 82的,桥接也可以做到添加option 82吗?
还有能不能请您举个例子DHCP中继正确的应用模型呢?
谢谢了啊,希望可以得到您更多的想法与建议!O(∩_∩)O非常谢谢!!
回复 8# rainfinity


   

论坛徽章:
1
技术图书徽章
日期:2014-04-28 13:16:45
8 [报告]
发表于 2014-04-21 18:22 |只看该作者
如果是这样的话, 肯定不会工作, 可以完全桥接, 这个其实不是dhcp relay, 是完全透传dhcp discovery + offer

                                                             br-lan ip: 192.168.1.10
dhcp server(192.168.1.1)---------------(br-lan2)router(br-lan1)-------------------dhcp client






  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP