Statistics
| Branch: | Tag: | Revision:

root / snf-network-ipless-routing-on @ 2e8a73e0

History | View | Annotate | Download (1 kB)

1
#!/bin/bash
2

    
3
source /etc/default/snf-network
4

    
5
source $CONF
6

    
7
RT_TABLES=/etc/iproute2/rt_tables
8

    
9
TABLE=$LINK
10
VLAN=$PUBLIC_VLAN
11
ARP_IP=$(ipcalc $SUBNET | grep HostMax | awk '{print $2}')
12

    
13
ip link set $VLAN up
14

    
15

    
16
ID=$(wc -l < $RT_TABLES)
17
echo $((ID+1)) $TABLE >> $RT_TABLES
18

    
19
if [ -n "$SUBNET" ]; then
20
  ip rule add iif $VLAN table $TABLE
21
  ip route add $SUBNET dev $VLAN table main 
22
  ip route add $SUBNET dev $VLAN table $TABLE
23
  if [ -n "$GATEWAY" ]; then
24
    ip route add default via $GATEWAY dev $VLAN table $TABLE
25
  fi
26
  arptables -A OUTPUT -o $VLAN --opcode request -j mangle --mangle-ip-s $ARP_IP 
27
  echo 1 > /proc/sys/net/ipv4/conf/all/forwarding
28
  echo 1 > /proc/sys/net/ipv4/conf/$VLAN/proxy_arp
29
fi
30

    
31
if [ -n "$SUBNET6" ]; then
32
  ip -6 rule add iif $VLAN table $TABLE
33
  ip -6 route add $SUBNET6 dev $VLAN table main
34
  ip -6 route add $SUBNET6 dev $VLAN table $TABLE
35
  if [ -n "$GATEWAY6" ]; then
36
    ip -6 route add default via $GATEWAY6 dev $VLAN table $TABLE
37
  fi
38
  echo 1 > /proc/sys/net/ipv6/conf/all/forwarding
39
  echo 1 > /proc/sys/net/ipv6/conf/$VLAN/proxy_ndp
40
fi