From: Michael Tremer Date: Fri, 1 Jul 2011 18:17:26 +0000 (+0200) Subject: Initial commit for static routing. X-Git-Tag: v2.9-core53~74^2~2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=bfd77eaf70f5112da41c9ae379c130fc8bceed76;p=ipfire-2.x.git Initial commit for static routing. Add script that initializes the routing table and is supposed to set the routes. --- diff --git a/lfs/iproute2 b/lfs/iproute2 index 3cc684483b..50ccf40df3 100644 --- a/lfs/iproute2 +++ b/lfs/iproute2 @@ -76,5 +76,9 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cd $(DIR_APP) && make $(MAKETUNING) SBINDIR=/sbin cd $(DIR_APP) && make SBINDIR=/sbin install cd $(DIR_APP) && mv -v /sbin/arpd /usr/sbin + + # Add table for static routing + echo "200 static" >> /etc/iproute2/rt_tables + @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/src/initscripts/init.d/static-routes b/src/initscripts/init.d/static-routes new file mode 100644 index 0000000000..184f97d47e --- /dev/null +++ b/src/initscripts/init.d/static-routes @@ -0,0 +1,39 @@ +#!/bin/bash + +. /etc/sysconfig/rc +. ${rc_functions} + + +function init_table() { + # Check if table does already exist. If not we add it. + if (ip rule | grep -qeE static >/dev/null 2>&1); then + return + fi + + ip rule add table static +} + + +case "${1}" in + start) + boot_mesg "Adding static routes..." + + # First, initialize the table + init_table + + ### ADD ALL ROUTES + + evaluate_retval + ;; + + stop) + boot_mesg "Removing static routes..." + ip route flush table static >/dev/null 2>&1 + evaluate_retval + ;; + + *) + echo "Usage: ${0} {start|stop}" + exit 1 + ;; +esac