Root/target/linux/ramips/base-files/etc/uci-defaults/network

1#!/bin/sh
2
3. /lib/functions.sh
4. /lib/ramips.sh
5. /lib/functions/uci-defaults.sh
6
7if [ ! -x /usr/sbin/maccalc ]; then
8    echo "$0: maccalc not found!"
9    return
10fi
11
12ramips_setup_rt3x5x_vlans()
13{
14    if [ ! -x /sbin/swconfig ]; then
15        # legacy default
16        ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
17        return
18    fi
19    local wanports=""
20    local lanports=""
21    swconfig dev rt305x set reset 1
22    for port in 5 4 3 2 1 0; do
23        if [ `swconfig dev rt305x port $port get disable` = "1" ]; then
24            continue
25        fi
26        if [ `swconfig dev rt305x port $port get lan` = "0" ]; then
27            wanports="$port $wanports"
28        else
29            lanports="$port $lanports"
30        fi
31    done
32    ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
33    ucidef_add_switch "rt305x" "1" "1"
34    ucidef_add_switch_vlan "rt305x" "1" "$lanports 6t"
35    ucidef_add_switch_vlan "rt305x" "2" "$wanports 6t"
36}
37
38ramips_setup_interfaces()
39{
40    local board="$1"
41
42    ucidef_set_interface_loopback
43
44    case $board in
45    all0256n | \
46    all5002 | \
47    broadway)
48        ucidef_set_interface_lan "eth0"
49        ;;
50
51    dir-615-h1 | \
52    wl-330n)
53        ucidef_set_interface_lan "eth0.1"
54        ;;
55
56    3g-6200n | \
57    argus-atp52b | \
58    b2c | \
59    nw718 | \
60    psr-680w | \
61    sl-r7205 | \
62    w502u | \
63    wr6202)
64        ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
65        ;;
66
67    dir-645)
68        ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
69        ucidef_add_switch "switch0" "1" "1"
70        ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 6t"
71        ucidef_add_switch_vlan "switch0" "2" "0 6t"
72        ;;
73
74    f5d8235-v1 | \
75    f5d8235-v2 | \
76    ur-336un)
77        ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
78        ;;
79
80    v11st-fe)
81        ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
82        ucidef_add_switch "switch0" "1" "1"
83        ucidef_add_switch_vlan "switch0" "1" "1 2 3 4 5t"
84        ucidef_add_switch_vlan "switch0" "2" "0 5t"
85        ;;
86
87    rt-n15 | \
88    wl-351)
89        ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
90        ucidef_add_switch "switch0" "1" "1"
91        ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 5t"
92        ucidef_add_switch_vlan "switch0" "2" "4 5t"
93        ;;
94
95    rt-n56u)
96        ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
97        ucidef_add_switch "switch0" "1" "1"
98        ucidef_add_switch_vlan "switch0" "1" "0 1 2 3 8t"
99        ucidef_add_switch_vlan "switch0" "2" "4 8t"
100        ;;
101
102    tew-691gr|\
103    tew-692gr)
104        ucidef_set_interfaces_lan_wan "eth0.1" "eth0.2"
105        ucidef_add_switch "switch0" "1" "1"
106        ucidef_add_switch_vlan "switch0" "1" "0t 1 2 3 4"
107        ucidef_add_switch_vlan "switch0" "2" "0t 5"
108        ;;
109
110    freestation5 | \
111    wcr-150gn)
112        ucidef_set_interfaces_lan_wan "eth0.2" "eth0.1"
113        ;;
114
115    wli-tx4-ag300n)
116        ucidef_set_interface_lan "eth0"
117        ;;
118
119    *)
120        RT3X5X=`cat /proc/cpuinfo | egrep "(RT3.5|RT5350)"`
121        if [ -n "${RT3X5X}" ]; then
122            ramips_setup_rt3x5x_vlans
123        else
124            ucidef_set_interfaces_lan_wan "eth0" "eth1"
125        fi
126        ;;
127    esac
128}
129
130ramips_setup_macs()
131{
132    local board="$1"
133    local lan_mac=""
134    local wan_mac=""
135
136    case $board in
137    all0256n | \
138    all5002 | \
139    dir-615-h1)
140        lan_mac=$(ramips_get_mac_binary factory 40)
141        ;;
142    3g-6200n | \
143    argus-atp52b | \
144    bc2 | \
145    broadway | \
146    f5d8235-v1 | \
147    nw718 | \
148    psr-680w | \
149    rt-n15 | \
150    sl-r7205 | \
151    wl-351)
152        lan_mac=$(ramips_get_mac_binary factory 4)
153        wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1)
154        ;;
155
156    w306r-v20)
157        lan_mac=$(ramips_get_mac_binary factory 4)
158        wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 5)
159        ;;
160
161    rt-n13u | \
162    fonera20n)
163        lan_mac=$(ramips_get_mac_binary factory 40)
164        wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1)
165        ;;
166
167    dir-300-b1 |\
168    dir-300-b2 |\
169    dir-600-b1)
170        lan_mac=$(ramips_get_mac_binary devdata 16388)
171        wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1)
172        ;;
173
174    dir-620-a1)
175        lan_mac=$(ramips_get_mac_binary factory 4)
176        lan_mac=$(maccalc or "$lan_mac" "02:00:00:00:00:00")
177        wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1)
178        ;;
179
180    dir-645)
181        lan_mac=$(ramips_get_mac_nvram nvram lanmac)
182        wan_mac=$(ramips_get_mac_nvram nvram wanmac)
183        ;;
184
185    esr-9753 | \
186    ur-336un)
187        lan_mac=$(ramips_get_mac_binary devdata 16388)
188        wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1)
189        ;;
190
191    nbg-419n | \
192    wcr-150gn)
193                lan_mac=$(ramips_get_mac_binary factory 4)
194                wan_mac=$(ramips_get_mac_binary factory 40)
195        ;;
196
197    f5d8235-v2)
198        lan_mac=$(ramips_get_mac_binary "u-boot" 262148)
199        wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1)
200        ;;
201
202    rt-n56u)
203        lan_mac=$(ramips_get_mac_binary factory 4)
204        wan_mac=$(ramips_get_mac_binary factory 32772)
205        ;;
206
207    tew-691gr)
208        lan_mac=$(ramips_get_mac_binary factory 40)
209        wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 3)
210        ;;
211
212    tew-692gr)
213        lan_mac=$(ramips_get_mac_binary factory 40)
214        wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 4)
215        ;;
216
217    all0239-3g | \
218    carambola | \
219    w502u)
220        lan_mac=$(ramips_get_mac_binary factory 40)
221        wan_mac=$(ramips_get_mac_binary factory 46)
222        ;;
223
224    wl341v3)
225        lan_mac=$(ramips_get_mac_binary board-nvram 65440)
226        wan_mac=$(/usr/sbin/maccalc add "$lan_mac" 1)
227        ;;
228
229    wli-tx4-ag300n)
230        lan_mac=$(ramips_get_mac_binary factory 4)
231        ;;
232
233    esac
234
235    [ -n "$lan_mac" ] && ucidef_set_interface_macaddr lan $lan_mac
236    [ -n "$wan_mac" ] && ucidef_set_interface_macaddr wan $wan_mac
237}
238
239[ -e /etc/config/network ] && exit 0
240
241touch /etc/config/network
242
243board=$(ramips_board_name)
244
245ramips_setup_interfaces $board
246ramips_setup_macs $board
247
248uci commit network
249
250exit 0
251

Archive Download this file



interactive