您的位置:

OpenWrt旁路由详解及设置

一、什么是OpenWrt旁路由

OpenWrt旁路由是指使用OpenWrt路由器作为网络扩展的一种方式。通常情况下,家庭或办公室网络使用的路由器都有一个内置的局域网和一个公网IP地址,那些需要连接公网的终端设备都会使用这个公网IP地址。但是有些情况下,我们需要在局域网内添加额外的网络设备,而这个设备也需要连接公网,这时候OpenWrt旁路由就能够派得上用场了。

举个例子,如果你的原始网络环境是由一台路由器(例如:TP-Link)和一些设备(计算机,手机,平板电脑等)组成的,现在你想要在局域网中增加一个AP设备,而这个设备需要连接到公网,那么你就可以使用OpenWrt旁路由来解决这个问题。通过OpenWrt旁路由,AP设备可以方便的连接到公网,从而实现了网络的拓扑扩展。

OpenWrt旁路由与主路由之间相互分离,主路由仅负责内网的出入口,可以使得其他设备在公网上独立地运行,同时也提高了网络安全性。

二、为OpenWrt路由器配置基础连接信息

在设置OpenWrt旁路由之前,首先需要进行一些基础配置工作,例如指定路由器的IP地址和DNS服务器,这样才能够正常访问网络。

以下是基本连接信息设置的步骤:

# 配置IP地址
uci set network.lan.ipaddr='192.168.1.2'
uci set network.lan.gateway='192.168.1.1'
uci set network.lan.dns='8.8.8.8'

# 配置DHCP服务器
uci set dhcp.lan.ignore=1 #忽略DHCP自动分配IP地址
uci set dhcp.lan.start=100 #从100开始自定义DHCP服务
uci set dhcp.lan.limit=150 #一共分配150个IP地址
uci set dhcp.lan.leasetime=12h #IP地址租期

uci commit # 保存配置

三、配置网络接口

在设置OpenWrt旁路由时,需要对网络接口配置进行调整,以适配多个子网交换的情况。

以下是网络接口配置步骤:

# 创建子接口
uci set network.wan=interface
uci set network.wan.ifname='eth0.2' # 设置子接口名字为eth0.2
uci set network.wan.proto='dhcp' # 启用DHCP协议

# 创建一个局域网
uci set network.lan=interface
uci set network.lan.type='bridge' # 设置连接类型为桥接
uci set network.lan.proto='static' # IP地址是静态分配,由OpenWrt路由器分配
uci set network.lan.ipaddr='192.168.5.1' # 分配IP地址为192.168.5.1
uci set network.lan.netmask='255.255.255.0' # 子网掩码

# 其他配置
uci set network.lan.ifname='eth0.1' # 将这个LAN接口添加到eth0.1
uci set network.lan.broadcast='192.168.5.255' # 设置广播地址
uci set network.lan.dns='192.168.1.1' # 设置DNS服务器地址

uci commit # 保存配置

四、防火墙配置

在进行OpenWrt旁路由设置时,需要对防火墙进行相应的配置,否则后续的网络连接将无法正常进行。

以下是防火墙配置的步骤:

# 首先创建一个自定义的防火墙区域
uci set firewall.myzone=zone
uci set firewall.myzone.name='newzone' # 命名为newzone
uci set firewall.myzone.input='ACCEPT' # 允许输入流量
uci set firewall.myzone.output='ACCEPT' # 允许输出流量
uci set firewall.myzone.forward='DROP' # 阻止转发

# 添加服务和端口规则
uci add firewall rule
uci set firewall.@rule[-1].name='Allow-DHCP-Renew'
uci set firewall.@rule[-1].src='newzone'
uci set firewall.@rule[-1].proto='udp'
uci set firewall.@rule[-1].dest_port='68'
uci set firewall.@rule[-1].target='ACCEPT'

uci add firewall rule
uci set firewall.@rule[-1].name='Allow-Ping'
uci set firewall.@rule[-1].src='newzone'
uci set firewall.@rule[-1].proto='icmp'
uci set firewall.@rule[-1].icmp_type='echo-request' # 允许ping
uci set firewall.@rule[-1].target='ACCEPT'

uci add firewall rule
uci set firewall.@rule[-1].name='Accept-DNS'
uci set firewall.@rule[-1].src='newzone'
uci set firewall.@rule[-1].proto='tcpudp'
uci set firewall.@rule[-1].dest_port='53' # 允许DNS流量
uci set firewall.@rule[-1].target='ACCEPT'

# 添加 NAT 规则和端口转发规则
uci add firewall zone
uci set firewall.@zone[-1].name='wan' # 设置WAN区域
uci set firewall.@zone[-1].input='REJECT' # 允许输入流量
uci set firewall.@zone[-1].output='ACCEPT' # 允许输出流量
uci set firewall.@zone[-1].forward='REJECT' # 允许转发
uci set firewall.@zone[-1].masq='1' # 开启 NAT

uci add firewall forwarding # 添加端口转发规则
uci set firewall.@forwarding[-1].src='newzone'
uci set firewall.@forwarding[-1].dest='wan'
uci commit # 保存配置

五、DHCP服务器配置

在OpenWrt旁路由设置的过程中,还需要对DHCP服务器进行相关的配置,使得设备可以正常连接到网络。

以下是DHCP服务器的配置步骤:

# 为DHCP服务器添加一个子区域
uci add dhcp dnsmasq
uci set dhcp.@dnsmasq[-1].domainneeded='1'
uci set dhcp.@dnsmasq[-1].boguspriv='1'
uci set dhcp.@dnsmasq[-1].filterwin2k='0'
uci set dhcp.@dnsmasq[-1].localise_queries='1'
uci set dhcp.@dnsmasq[-1].rebind_protection='1'
uci set dhcp.@dnsmasq[-1].rebind_localhost='1'
uci set dhcp.@dnsmasq[-1].local='/lan/'
uci set dhcp.@dnsmasq[-1].domain='lan'
uci set dhcp.@dnsmasq[-1].expandhosts='1'
uci set dhcp.@dnsmasq[-1].nonegcache='0'
uci set dhcp.@dnsmasq[-1].authoritative='1'
uci set dhcp.@dnsmasq[-1].readethers='1'
uci set dhcp.@dnsmasq[-1].leasefile='/tmp/dhcp.leases'
uci set dhcp.@dnsmasq[-1].resolvfile='/tmp/resolv.conf.auto'
uci add_list dhcp.@dnsmasq[-1].server='192.168.1.1' # 默认网关

# 添加IP地址分配规则
uci add dhcp host
uci set dhcp.@host[-1].name='my-iphone' # 设备名
uci set dhcp.@host[-1].mac='11:22:33:44:55:66' # 设备的MAC地址
uci set dhcp.@host[-1].ip='192.168.5.5' # 分配的IP地址,必须在192.168.5.0/24网段内

uci commit # 保存配置

六、总结

以上就是OpenWrt旁路由设置的流程。进行OpenWrt旁路由设置,需要对网络接口、防火墙、DHCP服务器等方面进行配置,并进行一定的了解。上述的步骤只是基本流程,如果需要深度的网络调整,还需要进行更高级的设置。