家庭网络折腾 篇一:EdgeRouter 实现 分客户端 DHCP Options

2021-10-14 17:08:15 13点赞 44收藏 15评论

创作立场声明:想要实现的功能一直没在中文互联网找到相关的信息,在此分享一下实现的过程,也做一饿个记录免得未来的自己需要再次折腾的时候忘了:-)

之前一直在使用一台 Edgerouter-X-SFP + PON Stick 做主路由,但又因为无法放弃 ROS 的 DHCP 服务器可以很方便的给各个客户端分配 DHCP Options 以用来无感切换DNS和网关而使用了一台 Mikrotik RB760iGS 做 DHCP 服务器。

在过去的一个炎热的夏天里放在储藏间的路由多次出现了当机的情况,于是某鱼上淘了自带风扇的 EdgerouterPro换上,又正好能上机柜,也就想把以前两个设备的功能集成一下。

扒了一圈发现中文互联网上似乎没有相关的资料,那就只好靠自己啦。

不查不知道,EdgeOS 自带的 DHCP 服务器还挺复杂,默认是使用 ISC DHCPD,但可以通过设置切换为使用Dnsmasq 管理 DHCP 服务,那么就可以借用 Dnsmasq 的功能来实现分客户端 DHCP Options 了。

在此假设所有之前config-tree的service - dhcp-server 部分均已清空。

首先 SSH 登入Edgerouter 的 CLI,然后

configure

进入配置模式

set service dhcp-server use-dnsmasq enable

切换到使用 Dnsmasq 管理 DHCP 服务

set service dhcp-server shared-network-name Home subnet 192.168.88.0/24 start 192.168.88.150 stop 192.168.88.240

创建名为 Home,网段为 192.168.88.0/24 的 DHCP 服务,并将分配地址池设为 192.168.88.150-192.168.88.240

commit ; save

提交并保存

此时就可以看到已经有一个名为 Home 的 DHCP 服务跑起来了。

EdgeOS 本身使用 Dnsmasq 来处理 DNS 转发,接下来需要使用 Dnsmasq 管理并分客户端赋予 DHCP Options,在 config-tree 中就需要在 service - dns - forwarding 中设置 Dnsmasq 的 Options。以下仅展示用DHCP Options 定义 DNS 和 Gateway 的设置,如果需要定义其他 Options 可以参考https://github.com/imp/dnsmasq/blob/master/dnsmasq.conf.example,具体的 Options 名称可以切换到 root用户后运行

dnsmasq --help dhcp

来查看。

此处假定需要定义的 DNS 和 Gateway 地址都是 192.168.88.2

首先需要定义附加的 Options

set service dns forwarding options dhcp-option=tag:abroad,option:router,192.168.88.2

定义 Option3 的 Gateway,并打上名为 abroad 的网络的 tag

set service dns forwarding options dhcp-option=tag:abroad,option:dns-server,192.168.88.2

定义 Option6 的 DNS 服务器,并打上名为 abroad 的网络的 tag

然后获取需要附加 Options 的客户端的 mac 地址,再添加

set service dns forwarding options dhcp-host=00:04:4c:34:56:0a,set:Home,set:abroad,192.168.88.90,SHIELD

即在 Home 网络下为 mac 为 00:04:4c:34:56:0a 的设备分配 IP 为 192.168.88.90 的地址,Hostname 标记为SHIELD,并附加 abroad 网络的所有 Options。

依次添加其他需要赋予的 Options 和 mac

commit ; save

提交并保存后再使用目标客户端请求IP地址就可以看到效果了。

EdgeRouter 实现 分客户端 DHCP Options

后续添加客户端基本也可以只在 UI 中添加一条 Options 的 String 就可以了,虽然没有 ROS 上直接用 UI 设置那么爽,但也基本做到很方便的水平了。

展开 收起

UBNT/优倍快 全千兆有线路由器 EdgeRouter ER-4专业版企业级PoE供电 可上机架 家用 硬件加速高性能轻松跑满

UBNT/优倍快 全千兆有线路由器 EdgeRouter ER-4专业版企业级PoE供电 可上机架 家用 硬件加速高性能轻松跑满

暂无报价

UniFi UDM-SE/UDM-PRO万兆企业路由POE交换监控门禁一体机企业级高性能网关NVR云管理Ubiquiti优倍快UBNT

UniFi UDM-SE/UDM-PRO万兆企业路由POE交换监控门禁一体机企业级高性能网关NVR云管理Ubiquiti优倍快UBNT

4399元起

UniFi U6-IW/UAP-IW-HD/UAP-AC-IW面板AP双频WiFi6/带PoE交换机/多台组网全屋无线漫游Ubiquiti优倍快UBNT

UniFi U6-IW/UAP-IW-HD/UAP-AC-IW面板AP双频WiFi6/带PoE交换机/多台组网全屋无线漫游Ubiquiti优倍快UBNT

1599元起

UniFi U6-Pro/U6-Lite/U6-LR WiFi6吸顶AP双频5G办公酒店别墅多台组网无死角覆盖全屋漫游Ubiquiti优倍快UBNT

UniFi U6-Pro/U6-Lite/U6-LR WiFi6吸顶AP双频5G办公酒店别墅多台组网无死角覆盖全屋漫游Ubiquiti优倍快UBNT

1399元起

UBNT优倍快 UniFi UDM-PRO 万兆网关路由器/交换机/控制器/录像机 视频管理存储一体

UBNT优倍快 UniFi UDM-PRO 万兆网关路由器/交换机/控制器/录像机 视频管理存储一体

暂无报价

UBNT er-x 路由器 (黑色)

UBNT er-x 路由器 (黑色)

暂无报价

UBNT 优倍快 无线AP AC二代控制器可远程管理 UCK-G2

UBNT 优倍快 无线AP AC二代控制器可远程管理 UCK-G2

1699元起

Ubiquiti 优倍快 UBNT优倍快UniFi WiFi6千兆吸顶式无线AP U6-Lite5G双频高速低延迟PoE供电大户型穿墙全屋覆盖家用别墅企业级

Ubiquiti 优倍快 UBNT优倍快UniFi WiFi6千兆吸顶式无线AP U6-Lite5G双频高速低延迟PoE供电大户型穿墙全屋覆盖家用别墅企业级

855元起

Ubiquiti 优倍快 ER-X 千兆企业路由器 黑色 单个装

Ubiquiti 优倍快 ER-X 千兆企业路由器 黑色 单个装

暂无报价

Ubiquiti优倍快UniFi万兆企业路由交换监控门禁一体机UDM-SE 高性能网管路由器企业级安全云管理集结一体UBNT

Ubiquiti优倍快UniFi万兆企业路由交换监控门禁一体机UDM-SE 高性能网管路由器企业级安全云管理集结一体UBNT

3399元起

UBNT ER-X-SFP 企业级千兆有线路由器 带PoE

UBNT ER-X-SFP 企业级千兆有线路由器 带PoE

暂无报价

Ubiquiti 优倍快 UC-CK 千兆无线AP 单个装 白色

Ubiquiti 优倍快 UC-CK 千兆无线AP 单个装 白色

暂无报价

UBNT UAP-AC-PRO 1750M双频吸顶AP 增强版

UBNT UAP-AC-PRO 1750M双频吸顶AP 增强版

暂无报价

UBNT UAP-AC-LITE 双频300M 千兆吸顶式无线AP Wi-Fi(802.11ac)POE 白色

UBNT UAP-AC-LITE 双频300M 千兆吸顶式无线AP Wi-Fi(802.11ac)POE 白色

暂无报价

Ubiquiti 优倍快 AmpliFi 双频1750M 千兆Mesh家用无线路由器+1个扩展器 单个装 白色

Ubiquiti 优倍快 AmpliFi 双频1750M 千兆Mesh家用无线路由器+1个扩展器 单个装 白色

暂无报价

Ubiquiti 优倍快 U6-Pro吸顶WiFi6 4800MBps

Ubiquiti 优倍快 U6-Pro吸顶WiFi6 4800MBps

暂无报价
15评论

  • 精彩
  • 最新
  • 置顶 追加一下最近看到的作用相同的配置方式

    service / dhcp-server / shared-network-name / LAN / subnet / 192.168.88.0/24 / static-mapping

    在每一个固定IP的设备的 static-mapping-parameters 部分添加

    option routers 192.168.88.3;
    option domain-name-servers 198.18.0.2;
    预览保存后重新连接就可以生效了。

    校验提示文案

    提交
    之前就看了水叔的帖子 今天要操作的时候回来找这个帖子 正好看到了

    校验提示文案

    提交
    原帖的改dns配置的方法可以成功
    评论里这个方法失败 不知道是什么原因 我dns设置成/21不知道有没有关系

    校验提示文案

    提交
    还有2条回复
    收起所有回复
  • 这东西不费电吗?性能还不如er-12

    校验提示文案

    提交
    费电呀,还吵呢,但是舒爽啊,反正扔在家里机房,也听不见。

    校验提示文案

    提交
    收起所有回复
  • 请问使用场景是?

    校验提示文案

    提交
    给无法手动设置网关和DNS(或者手动设置起来比较麻烦比如电视等等用遥控器的玩意)设置和默认不同的网关和DNS呀,再多想想还会有更多使用场景比如无感的为父母孩子的设备切换Pi-hole服务等等

    校验提示文案

    提交
    hi,请教下,为什么要给某些设备设置不同的网关的 DNS?我理解如果统一用 pi-hole 或者 adguard 做 dns 的话,可以在里面针对具体 client 做一些配置吧?

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 看来家里的网络都喜欢使用88这一段…

    校验提示文案

    提交
    以前用ROS时候产生的历史遗留问题。。不过反正没啥影响。。几个不同的家里各用66,99,166等等方便互联访问哈哈哈哈

    校验提示文案

    提交
    收起所有回复
  • 这个,感觉要求有点略高啊

    校验提示文案

    提交
  • 老哥 我留个邮箱 ruichen.luo@gmail.com 方便联系下 加个好友么

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
44
扫一下,分享更方便,购买更轻松