]> git.ipfire.org Git - ipfire-2.x.git/blame - src/initscripts/system/swconfig
unbound: Drop certificates for local control connection
[ipfire-2.x.git] / src / initscripts / system / swconfig
CommitLineData
ffeb717f
AF
1#!/bin/sh
2########################################################################
3# Begin $rc_base/init.d/swconfig
4#
5# Description : Script to setup lan switch.
6# don't edit this script! If you want change the functions
7# create an own script called swconfig.user
8########################################################################
9
10. /etc/sysconfig/rc
11. ${rc_functions}
12
13if [ -e /etc/init.d/swconfig.user ]; then
14 /etc/init.d/swconfig.user $*
15 exit ${?}
16fi
17
18if [ -e /var/ipfire/ethernet/swconfig_mac ]; then
19SWMAC=`cat /var/ipfire/ethernet/swconfig_mac`
20else
21# Generate a random local administrated mac address for vlan swconfig.
22SWMAC=`printf "%1x2:%02x:%02x:%02x:%02x" $[RANDOM%16] $[RANDOM%256] $[RANDOM%256] $[RANDOM%256] $[RANDOM%256]`
23echo $SWMAC > /var/ipfire/ethernet/swconfig_mac
24fi
25
26case "${1}" in
27 start)
309b7de8 28 case `cat /proc/device-tree/model 2>/dev/null` in
4a277656 29 "Lamobo R1")
ffeb717f
AF
30 #
31 # Lamobo R1 aka BPi R1 Routerboard
32 #
4a277656 33 # Speaker | LAN4 | LAN3 | LAN2 | LAN1 || WAN | HDMI
ffeb717f 34 # SW-Port | P2 | P1 | P0 | P4 || P3 |
4a277656 35 # VLAN | 14 | 13 | 12 | 11 || all |
ffeb717f
AF
36 #
37 # Switch-Port P8 - ALL(t) boards internal CPU Port
38 #
4a277656
AF
39
40 device=`ls /sys/class/net/*/device/driver/1c50000.ethernet/net | head -1`
ffeb717f 41 ip link set $device up
4a277656
AF
42
43 # create bridge
44 ip link add switch0 type bridge
45 ip link set wan master switch0
46 ip link set lan1 master switch0
47 ip link set lan2 master switch0
48 ip link set lan3 master switch0
49 ip link set lan4 master switch0
50
ffeb717f 51 # configure vlans
4a277656
AF
52 bridge vlan add vid 11 dev lan1 pvid untagged
53 bridge vlan add vid 12 dev lan2 pvid untagged
54 bridge vlan add vid 13 dev lan3 pvid untagged
55 bridge vlan add vid 14 dev lan4 pvid untagged
56 bridge vlan add vid 11 dev wan
57 bridge vlan add vid 12 dev wan
58 bridge vlan add vid 13 dev wan
59 bridge vlan add vid 14 dev wan
60
61 # Remove wrong vlan1 from all ports
62 bridge vlan del vid 1 dev lan1
63 bridge vlan del vid 1 dev lan2
64 bridge vlan del vid 1 dev lan3
65 bridge vlan del vid 1 dev lan4
66 bridge vlan del vid 1 dev wan
67
68 # enable all ports
69 ip link set lan1 up
70 ip link set lan2 up
71 ip link set lan3 up
72 ip link set lan4 up
73 ip link set wan up
74
75 # create virtual interfaces for the vlan's
ffeb717f
AF
76 modprobe 8021q
77 vconfig add $device 11
78 vconfig add $device 12
79 vconfig add $device 13
80 vconfig add $device 14
81 # set local mac addresses.
82 ip link set dev $device.11 address $SWMAC:11
83 ip link set dev $device.12 address $SWMAC:12
84 ip link set dev $device.13 address $SWMAC:13
85 ip link set dev $device.14 address $SWMAC:14
86 # need to restart udev...
87 killall udevd
88 /etc/init.d/udev start
89 ;;
90 esac
91 exit 0
92 ;;
93
94 *)
95 echo "Usage: ${0} {start}"
96 exit 1
97 ;;
98esac
99
100# End $rc_base/init.d/swconfig
101