openwrt 防火墙_OpenWrt路由器网络配置详解,再也不用登陆web界面配置了

02417553c5dac2771f0a470e00efe1fb.gif

OpenWrt的网络配置文件是/etc/config/network,它负责交换芯片VLAN、网络接口和路由的配置。

此文件在编辑和保存之后需要执行

/etc/init.d/network reload命令,目的是为了在变更生效前,停止和重启网络。

想学习OpenWrt嵌入式开发的同学可以备一本入门书籍进行查阅

1interface配置

interface类型的section声明了逻辑网络接口,可以为这些接口指定IP地址、别名、物理网络接口名称、路由规则 及 防火墙规则。

一个最简的interface节包含以下行:

config 'interface' 'wan'

        option 'proto' 'dhcp'

        option 'ifname' 'eth0.1'

wan 是唯一的 逻辑网络接口名称

dhcp 指定接口协议,这里是dhcp

eth0.1 是相关联的物理网络接口名称(用ifconfig可看到)

接口协议可以是以下之一:

d4b4a23f6387c9cbf18e53c0ad0c7500.png

不同的协议,额外的选项也不一样

所有协议类型的有效选项

e147d97a6ebda18140c2effe2fba08e0.png

"static"协议

a2b70c00163ab92b27e3e787c298c1af.png

"pppoe"协议

de5c9188977bf68cd290702c8974a673.png

"dhcp"协议

821600ed305059dcaa9432b0f10a9a44.png

2alias配置多个ip

网络接口支持配置多个ip地址,在linux系统中可以通过ip addr命令进行配置和查看,OpenWrt系统中可以通过修改network配置设置接口多ip

1f78ed9bb2810d4e6fb9a943820c6043.png

配置实例

/etc/config/network lan接口配置如下

a755c076697c99f5e4d734447b6a8850.png

/etc/init.d/network restart后,通过ip命令查看

93cf2d290a0565bc5294765a9a6bfc45.png

3配置路由

network配置文件也支持配置路由,可以增加多个section配置多条路由规则

配置路由实例

修改/etc/config/network配置,增加以下路由配置

2d067b5e6eeeaea3a0a8ece400297988.png

保存后重启网络(/etc/init.d/network reload)

然后通过route命令查看路由是否生效

77385bdfb23340460dd9a1e6ac62d713.png

可以看到系统中多了两条路由规则

4桥配置

OpenWrt lan的桥(bridge)名称叫br-lan,一个桥下面可以增加多个接口,如无线接口wlan0,以太网eth0接口等,在同一个桥下的接口是二层链路互通的,同一桥的接口数据上升到三层(ip层)后,都复用桥的地址,也就是我们经常说的lan口地址,可以通过ifconfig br-lan查看

11eac6c60669fde72d8741e8dedf294e.png

OpenWrt桥配置

00ea2abcdec6fa69ce67d6613a8276e3.png

修改桥名称

修改/etc/config/network配置,将lan口的桥名称由lan修改为0

a3d00a61dd324080001f2aff12eea671.png

修改无线配置

无线默认是绑定到br-lan桥的,修改了桥名称也要对于修改无线绑定的桥,无线配置在/etc/config/wireless中,绑桥的option为network,默认是lan,我们可以修改为0,表示绑定到br-0

f6ecd62fa1af62b5daec12a2d8d1311a.png

重启network(/etc/init.d/network reload)

查看接口信息如下

0dd7c134605d3d269fb8288f28a13bb0.png

现在eth0.1和wlan0绑定到了br-0桥下,lan口ip也配置到了br-0桥上。

4Ubus查看网络接口状态

网络除了配置,还有有实时状态,/etc/config/network只是配置文件,该配置最终是通过netifd守护进程读取和生效,类似于Ubuntu等linux发行版的NetworkManager。OpenWrt中采用了ubus消息机制,netifd注册了查询网络状态的相关接口,可以通过ubus命令实时获取当前系统的网络信息,返回结果为json格式方便开发处理。

常用的ubus命令

ce99f49c4491a2872df520b638631044.png

  • 查看wan口状态

89f543b308cf17f92268e53f53b57c30.png

  • 查看lan口状态

fe9f4dced11d29da5156cc983db1048b.png

  • 查看无线状态

6f8013b656e3fe1b55d2cc97abb3b8bc.png

5总结

网络是OpenWrt固件的基础,大部分的插件都依赖于网络配置,所以要精通OpenWrt首先要对网络了如指掌。希望通过该篇文章能够帮助到大家更好的学习OpenWrt系统的使用和开发,也欢迎大家提出OpenWrt教程的建议。

app过滤插件更新:

  1. 支持迅雷、芒果tv、ftp过滤

  2. 提高协议识别性能

OpenWrt技术交流qq群: 943396288 

▼关注公众号获取更多OpenWrt技术干货▼ 5d9fbd45e32cc8eb30da9d3d910befa3.png e020f8c29abadd8943a61e6344b3fc9f.png

                                  好文章,我在看 

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值