3 source /etc/default/snf-network
7 if [ ! -e $STATE_DIR/infra ]; then
8 echo No infra file found!
9 echo run: snf-network-build-node-infra
13 source $STATE_DIR/infra
16 echo "Usage: $0 <routing table> <subnet> <gateway> <subnet6> <gateway6>"
20 RT_TABLES=/etc/iproute2/rt_tables
29 ARP_IP=$(ipcalc $SUBNET | grep HostMax | awk '{print $2}')
33 ID=$(wc -l < $RT_TABLES)
34 echo $((ID+1)) $TABLE >> $RT_TABLES
36 if [ -n "$SUBNET" ]; then
37 ip rule add iif $VLAN table $TABLE
38 ip route add $SUBNET dev $VLAN table main
39 ip route add $SUBNET dev $VLAN table $TABLE
40 if [ -n "$GATEWAY" ]; then
41 ip route add default via $GATEWAY dev $VLAN table $TABLE
43 arptables -A OUTPUT -o $VLAN --opcode request -j mangle --mangle-ip-s $ARP_IP
44 echo 1 > /proc/sys/net/ipv4/conf/all/forwarding
45 echo 1 > /proc/sys/net/ipv4/conf/$VLAN/proxy_arp
48 if [ -n "$SUBNET6" ]; then
49 ip -6 rule add iif $VLAN table $TABLE
50 ip -6 route add $SUBNET6 dev $VLAN table main
51 ip -6 route add $SUBNET6 dev $VLAN table $TABLE
52 if [ -n "$GATEWAY6" ]; then
53 ip -6 route add default via $GATEWAY6 dev $VLAN table $TABLE
55 echo 1 > /proc/sys/net/ipv6/conf/all/forwarding
56 echo 1 > /proc/sys/net/ipv6/conf/$VLAN/proxy_ndp