openwrtv4/target/linux/ar71xx/base-files/etc/uci-defaults/network
2011-11-07 21:44:12 +00:00

200 lines
3.5 KiB
Bash
Executable file

#!/bin/sh
#
# Copyright (C) 2011 OpenWrt.org
#
set_interface_loopback() {
uci batch <<EOF
set network.loopback='interface'
set network.loopback.ifname='lo'
set network.loopback.proto='static'
set network.loopback.ipaddr='127.0.0.1'
set network.loopback.netmask='255.0.0.0'
EOF
}
set_interface_raw() {
local cfg=$1
local ifname=$2
uci batch <<EOF
set network.$cfg='interface'
set network.$cfg.ifname='$ifname'
set network.$cfg.proto='none'
EOF
}
set_interface_lan() {
local ifname=$1
uci batch <<EOF
set network.lan='interface'
set network.lan.ifname='$ifname'
set network.lan.type='bridge'
set network.lan.proto='static'
set network.lan.ipaddr='192.168.1.1'
set network.lan.netmask='255.255.255.0'
EOF
}
set_interface_wan() {
local ifname=$1
uci batch <<EOF
set network.wan='interface'
set network.wan.ifname='$ifname'
set network.wan.proto='dhcp'
EOF
}
set_interfaces_lan_wan() {
local lan_ifname=$1
local wan_ifname=$2
set_interface_lan "$lan_ifname"
set_interface_wan "$wan_ifname"
}
add_switch() {
local name=$1
local reset=$2
local enable=$3
uci batch <<EOF
add network switch
set network.@switch[-1].name='$name'
set network.@switch[-1].reset='$reset'
set network.@switch[-1].enable_vlan='$enable'
EOF
}
add_switch_vlan() {
local device=$1
local vlan=$2
local ports=$3
uci batch <<EOF
add network switch_vlan
set network.@switch_vlan[-1].device='$device'
set network.@switch_vlan[-1].vlan='$vlan'
set network.@switch_vlan[-1].ports='$ports'
EOF
}
[ -e /etc/config/network ] && exit 0
touch /etc/config/network
set_interface_loopback
. /lib/ar71xx.sh
board=$(ar71xx_board_name)
case "$board" in
dir-825-b1)
set_interfaces_lan_wan "eth0.1" "eth1"
add_switch "rtl8366s" "1" "1"
add_switch_vlan "rtl8366s" "1" "0 1 2 3 5t"
;;
rb-433 |\
rb-433u)
set_interfaces_lan_wan "eth1" "eth0"
add_switch "switch0" "1" "1"
add_switch_vlan "switch0" "1" "1 2 5"
;;
rb-450)
set_interfaces_lan_wan "eth1" "eth0"
add_switch "eth1" "1" "1"
add_switch_vlan "eth1" "1" "0 1 2 3 5"
;;
rb-450g |\
routerstation-pro)
set_interfaces_lan_wan "eth1" "eth0"
add_switch "switch0" "1" "1"
add_switch_vlan "switch0" "1" "0 1 2 3 4"
;;
rb-493g)
set_interfaces_lan_wan "eth0 eth1.1" "eth1.2"
add_switch "switch0" "1" "1"
add_switch_vlan "switch0" "1" "0 1 2 3 4"
add_switch "switch1" "1" "1"
add_switch_vlan "switch1" "1" "0t 1 2 3 4"
add_switch_vlan "switch1" "2" "0t 5"
;;
pb92)
set_interfaces_lan_wan "eth0.1" "eth0.2"
add_switch "eth0" "1" "1"
add_switch_vlan "eth0" "1" "0t 1 3 4 5"
add_switch_vlan "eth0" "2" "0t 2"
;;
tl-wr1043nd)
set_interfaces_lan_wan "eth0.1" "eth0.2"
add_switch "rtl8366rb" "1" "1"
add_switch_vlan "rtl8366rb" "1" "1 2 3 4 5t"
add_switch_vlan "rtl8366rb" "2" "0 5t"
;;
tl-wr841n-v1|\
tl-wr941nd)
set_interface_raw "eth" "eth0"
set_interfaces_lan_wan "lan1 lan2 lan3 lan4" "wan"
;;
wrt160nl)
set_interfaces_lan_wan "eth0" "eth1"
add_switch "eth0" "1" "1"
add_switch_vlan "eth0" "1" "0 1 2 3 4 5"
;;
aw-nr580 |\
bullet-m |\
eap7660d |\
rb-411 |\
tl-wa901nd-v2 |\
tl-wr703n |\
wp543)
set_interface_lan "eth0"
;;
ap83 |\
jwap003 |\
pb42 |\
pb44 |\
routerstation)
set_interfaces_lan_wan "eth1" "eth0"
;;
ap121 |\
ap121-mini |\
ap96 |\
dir-600-a1 |\
dir-615-c1 |\
ja76pf |\
rb750 |\
tew-632brp |\
tl-mr3220 |\
tl-mr3420 |\
tl-wr741nd |\
tl-wr741nd-v4 |\
whr-g301n |\
whr-hp-g300n |\
whr-hp-gn |\
wzr-hp-ag300h)
set_interfaces_lan_wan "eth0" "eth1"
add_switch "eth0" "1" "1"
add_switch_vlan "eth0" "1" "0 1 2 3 4"
;;
*)
set_interfaces_lan_wan "eth0" "eth1"
;;
esac
uci commit network
exit 0