Revision ed7f0f2a kvm-vif-bridge

b/kvm-vif-bridge
18 18

  
19 19
function routed_setup_ipv4 {
20 20
	# get the link's default gateway
21
	gw=$(ip route list table $TABLE | sed -n 's/default via \([^ ]\+\).*/\1/p' | head -1)
21
	gw=$GATEWAY
22 22

  
23 23
	# mangle ARPs to come from the gw's IP
24 24
	arptables -A OUTPUT -o $INTERFACE --opcode request -j mangle --mangle-ip-s "$gw"
......
35 35

  
36 36
function routed_setup_ipv6 {
37 37
	# Add a routing entry for the eui-64
38
	prefix=$(ip -6 route list table $TABLE | awk '/\/64/ {print $1; exit}')
39
	uplink=$(ip -6 route list table $TABLE | sed -n 's/default via .* dev \([^ ]\+\).*/\1/p' | head -1)
38
	prefix=$SUBNET6
39
	uplink=$GATEWAY6
40 40
	eui64=$($MAC2EUI64 $MAC $prefix)
41 41

  
42 42
	while ip -6 rule del dev $INTERFACE; do :; done
......
82 82

  
83 83
function setup_nfdhcpd {
84 84
	umask 022
85
	cat >$NFDHCPD_STATE_DIR/$INTERFACE <<EOF
85
  FILE=$NFDHCPD_STATE_DIR/$INTERFACE
86
	cat >$FILE <<EOF
86 87
IFACE=$1
87 88
IP=$IP
88 89
MAC=$MAC
......
90 91
HOSTNAME=$INSTANCE
91 92
TAGS="$TAGS"
92 93
EOF
94
if [ -n $GATEWAY ]; then
95
 echo GATEWAY=$GATEWAY >> $FILE
96
fi
97
if [ -n $SUBNET ]; then
98
 echo SUBNET=$SUBNET >> $FILE
99
fi
100
if [ -n $GATEWAY6 ]; then
101
 echo GATEWAY6=$GATEWAY6 >> $FILE
102
fi
103
if [ -n $SUBNET6 ]; then
104
 echo SUBNET6=$SUBNET6 >> $FILE
105
fi
106

  
93 107
}
94 108

  
95 109
function clear_ebtables {
......
136 150
  fi
137 151
}
138 152

  
139
#FIXME: import router mac from the config files
140
#       must know node group!! how???
141
ROUTER_MAC=e4:11:5b:b2:8d:ca
142
MAC_MASK=ff:ff:ff:0:0:0
143 153

  
144 154
TABLE=rt_$NETWORK
145 155

  
......
158 168
	iptables -A FORWARD -i $INTERFACE -p udp --dport 67 -j DROP
159 169

  
160 170
	routed_setup_ipv4
161
#	routed_setup_ipv6
162
#	routed_setup_firewall
171
	routed_setup_ipv6
172
	routed_setup_firewall
163 173
	setup_nfdhcpd $INTERFACE
164 174
  clear_ebtables >/dev/null 2>&1
165 175
elif [ "$MODE" = "bridged" ]; then

Also available in: Unified diff