本项目需求源自于:公司多线出口切换,可实现在网页上实现切换不同出口
本项目基于多网关思路如下:
./hooks/switch. sh
./hooks/switch. sh
实现需要在 iproute2 里面编辑相应的 VRF Table
比如说增加联通和电信的策略出口,就需要在 rt_tables
里面增加 VRF table
vim /etc/iproute2/rt_tables
增加这两行:
250 china_telecom
249 china_unicom
然后添加默认路由
/sbin/ip route add default via [Your_china_unicom_gateway_ip/Your_china_unicom_gateway_interface] table china_unicom
/sbin/ip route add default via [Your_china_telecom_gateway_ip/Your_china_telecom_gateway_interface] table china_telecom
记得写个脚本监控这两条路由是否存活,如果遇到意外情况导致 Interfac e 挂掉,路由会消失而且不会自动补上。 完成后, VRF Table 就做好了,然后调用 PBR 模块就可以对特定 IP 地址进行策略路由。
./configure.json
{
"listen": "127.0.0.1:10000",
"modes": [
"main",
"china_telecom",
"china_unicom",
"load_balance",
"clear_settings"
]
}
./hooks/switch. sh
本文件用于实现 实现切换路由 在网页上点击各出口路由按钮将通过 ajax 触发该操作
本操作等价于 ./hooks/switch. sh $REMOTE_ADDRESS $MODE_NAME
操作
($REMOTE_ADDRESS
为您访问该网页的 IP 、$MODE_NAME
为您选择的模式名称)
(警告:本项目的实现目前仅限于 EdgeRouter Lite v1.6 ,您可通过适当的修改实现在 OpenWrt 使用)
./hooks/status. sh
本文件用于实现 查询当前路由模式状态 在网页上点击 Read Status 按钮将通过 ajax 触发该操作
本操作等价于 ./hooks/status. sh $REMOTE_ADDRESS
操作
($REMOTE_ADDRESS
为您访问该网页的 IP )
(警告:本项目的实现目前仅限于 EdgeRouter Lite v1.6 ,您可通过适当的修改实现在 OpenWrt 使用)
./pages/index.html
本文件的是您访问该服务所为您提供视觉呈现的网页
https://github.com/xtomcom/NetworkSwitch
欢迎 Star 和 Fork
1
xTom OP 因为自动转换域名了,所以 status. sh 和 switch. sh 文件名和后缀之间多写了个空格
|
2
GPU 2017-03-17 08:53:19 +08:00
不好明白和 EdgeOS 有什么关系 。明明就没有用到 EdgeOS 的功能。
一开始我还以为楼主是给 EdgeOS 写了一个功能。然而并不是。 |