summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@baturin.org>2016-01-28 04:26:25 +0500
committerDaniil Baturin <daniil@baturin.org>2016-01-28 04:26:25 +0500
commitbea703adf74ae7048b60778cd62c7bc0f80c9773 (patch)
treee15fd30a8995dbd3d2e4845cc6accb02adad4b11
parenta4ec1d5d58c0f791532244ae8320ac74f2cfa609 (diff)
parent1e7d61cb1104aacb494cc81f693147a27cee9e3f (diff)
downloadvyatta-cfg-system-bea703adf74ae7048b60778cd62c7bc0f80c9773.tar.gz
vyatta-cfg-system-bea703adf74ae7048b60778cd62c7bc0f80c9773.zip
Merge pull request #49 from scv0/current
Bug #631: Add 6rd-relay-prefix option to tunnel interface
-rw-r--r--templates/interfaces/tunnel/node.def9
-rw-r--r--templates/interfaces/tunnel/node.tag/6rd-relay-prefix/node.def10
2 files changed, 16 insertions, 3 deletions
diff --git a/templates/interfaces/tunnel/node.def b/templates/interfaces/tunnel/node.def
index 720bf64f..bd2c4255 100644
--- a/templates/interfaces/tunnel/node.def
+++ b/templates/interfaces/tunnel/node.def
@@ -57,14 +57,17 @@ create:
else
TTL="ttl 255"
fi
- if [ -n "$VAR(./parameters/ip/key/@)" ]; then
+ if [ -n "$VAR(./parameters/ip/key/@)" ]; then
KEY="key $VAR(./parameters/ip/key/@)"
- fi
+ fi
if [ "$VAR(./encapsulation/@)" == "gre" ] && [ -z $VAR(./remote-ip/) ]; then
ip tunnel add $VAR(@) local $LIP mode gre $KEY $TTL $TOS
elif [ "$VAR(./encapsulation/@)" == "sit" ] && [ -n "$VAR(./6rd-prefix/@)" ]; then
+ if [ -n "$VAR(./6rd-relay-prefix/@)" ]; then
+ RP="6rd-relay_prefix $VAR(./6rd-relay-prefix/@)"
+ fi
ip tunnel add $VAR(@) remote $VAR(./remote-ip/@) mode sit
- ip tunnel 6rd dev $VAR(@) 6rd-prefix $VAR(./6rd-prefix/@)
+ ip tunnel 6rd dev $VAR(@) 6rd-prefix $VAR(./6rd-prefix/@) $RP
else
ip tunnel add $VAR(@) local $LIP remote $VAR(./remote-ip/@) mode $VAR(./encapsulation/@) $KEY $TTL $TOS
fi
diff --git a/templates/interfaces/tunnel/node.tag/6rd-relay-prefix/node.def b/templates/interfaces/tunnel/node.tag/6rd-relay-prefix/node.def
new file mode 100644
index 00000000..0f877e2d
--- /dev/null
+++ b/templates/interfaces/tunnel/node.tag/6rd-relay-prefix/node.def
@@ -0,0 +1,10 @@
+multi:
+type: ipv4net
+val_help: ipv4net; IPv4 prefix of interface for 6rd
+help: 6rd relay prefix
+
+syntax:expression: exec "/opt/vyatta/sbin/valid_address $VAR(@)"
+
+create:expression: "true"
+update:expression: "false" ; \
+ "6rd-relay-prefix can only be modified at tunnel creation for $VAR(../@)"