summaryrefslogtreecommitdiff
path: root/templates/interfaces/ethernet
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@baturin.org>2018-06-24 12:50:17 +0200
committerDaniil Baturin <daniil@baturin.org>2018-06-24 12:50:17 +0200
commitbacecf80ea16d3cd30dc7c98c98af013b2adc258 (patch)
tree2b1d6f48708ace28ae4f6c9893ee50f6f390c6b7 /templates/interfaces/ethernet
parent0d8e75e2e808ccf366a1527647a6353c09d92237 (diff)
parent0f19dc57ed6588c083eee8aa9aee09b92b441b08 (diff)
downloadvyatta-cfg-system-lithium.tar.gz
vyatta-cfg-system-lithium.zip
Merge branch 'current' into lithiumlithium
Conflicts: debian/changelog scripts/snmp/vyatta-snmp-v3.pl scripts/snmp/vyatta-snmp.pl templates/interfaces/tunnel/node.def templates/system/sysctl/custom/node.def
Diffstat (limited to 'templates/interfaces/ethernet')
-rw-r--r--templates/interfaces/ethernet/node.def16
-rw-r--r--templates/interfaces/ethernet/node.tag/dhcpv6-options/node.def2
-rw-r--r--templates/interfaces/ethernet/node.tag/vif-s/node.tag/dhcpv6-options/node.def2
-rw-r--r--templates/interfaces/ethernet/node.tag/vif-s/node.tag/ip/proxy-arp-pvlan/node.def3
-rw-r--r--templates/interfaces/ethernet/node.tag/vif-s/node.tag/vif-c/node.tag/dhcpv6-options/node.def2
-rw-r--r--templates/interfaces/ethernet/node.tag/vif-s/node.tag/vif-c/node.tag/ip/proxy-arp-pvlan/node.def3
-rw-r--r--templates/interfaces/ethernet/node.tag/vif/node.tag/dhcpv6-options/node.def2
-rw-r--r--templates/interfaces/ethernet/node.tag/vif/node.tag/ip/proxy-arp-pvlan/node.def3
8 files changed, 27 insertions, 6 deletions
diff --git a/templates/interfaces/ethernet/node.def b/templates/interfaces/ethernet/node.def
index bdbdb0d5..2af57e0a 100644
--- a/templates/interfaces/ethernet/node.def
+++ b/templates/interfaces/ethernet/node.def
@@ -4,13 +4,18 @@ type: txt
help: Ethernet interface name
allowed: /opt/vyatta/sbin/vyatta-interfaces.pl --show=ethernet
val_help: <ethN>; Ethernet interface name
-syntax:expression: pattern $VAR(@) "^eth[0-9]+$" \
+syntax:expression: pattern $VAR(@) "^(eth|lan)[0-9]+$" \
; "interface ethernet $VAR(@): not a valid name"
syntax:expression: exec \
"if [ ! -d /sys/class/net/$VAR(@) ]; then \
echo \"interface ethernet $VAR(@): does not exist\";
exit 1; \
+ fi
+
+ if ip link show | awk '{print $2 }' | grep -ao \"lan[0-9]@$VAR(@)\" > /dev/null 2>&1 ; then \
+ echo \"interface ethernet $VAR(@): is a switch master interface and not configurable, please use 'lan' interfaces\";
+ exit 1; \
fi"
begin: rm -f /tmp/speed-duplex.$VAR(@)
@@ -26,7 +31,14 @@ begin: rm -f /tmp/speed-duplex.$VAR(@)
create: if ! cli-shell-api exists interfaces ethernet $VAR(@) disable;
- then ip link set $VAR(@) up
+ then
+ case "$VAR(@)" in
+ *lan*)
+ masterint=$(ip link show $VAR(@) | awk 'NR==1{print $2 }' | grep -ao "eth[0-9]")
+ ip link set $masterint up
+ ;;
+ esac
+ ip link set $VAR(@) up
fi
/opt/vyatta/sbin/vyatta-link-detect $VAR(@) on
diff --git a/templates/interfaces/ethernet/node.tag/dhcpv6-options/node.def b/templates/interfaces/ethernet/node.tag/dhcpv6-options/node.def
index 225bd926..d25533f9 100644
--- a/templates/interfaces/ethernet/node.tag/dhcpv6-options/node.def
+++ b/templates/interfaces/ethernet/node.tag/dhcpv6-options/node.def
@@ -27,7 +27,7 @@ end:
exit 0
fi
- conffile=/var/lib/dhcp3/dhclient_v6_$VAR(../@).conf
+ conffile=/var/lib/dhcp/dhclient_v6_$VAR(../@).conf
if [ ! -e $conffile ]; then
echo "Conf file $conffile doesn't exist"
exit 0
diff --git a/templates/interfaces/ethernet/node.tag/vif-s/node.tag/dhcpv6-options/node.def b/templates/interfaces/ethernet/node.tag/vif-s/node.tag/dhcpv6-options/node.def
index 31237d3b..9116b354 100644
--- a/templates/interfaces/ethernet/node.tag/vif-s/node.tag/dhcpv6-options/node.def
+++ b/templates/interfaces/ethernet/node.tag/vif-s/node.tag/dhcpv6-options/node.def
@@ -26,7 +26,7 @@ end:
exit 0
fi
- conffile=/var/lib/dhcp3/dhclient_v6_$ifname.conf
+ conffile=/var/lib/dhcp/dhclient_v6_$ifname.conf
if [ ! -e $conffile ]; then
echo "Conf file $conffile doesn't exist"
exit 0
diff --git a/templates/interfaces/ethernet/node.tag/vif-s/node.tag/ip/proxy-arp-pvlan/node.def b/templates/interfaces/ethernet/node.tag/vif-s/node.tag/ip/proxy-arp-pvlan/node.def
new file mode 100644
index 00000000..e1ab1f00
--- /dev/null
+++ b/templates/interfaces/ethernet/node.tag/vif-s/node.tag/ip/proxy-arp-pvlan/node.def
@@ -0,0 +1,3 @@
+help: Enable private VLAN proxy ARP on this interface
+create:expression: "sudo sh -c \"echo 1 > /proc/sys/net/ipv4/conf/$VAR(../../../@).$VAR(../../@)/proxy_arp_pvlan\" "
+delete:expression: "sudo sh -c \"echo 0 > /proc/sys/net/ipv4/conf/$VAR(../../../@).$VAR(../../@)/proxy_arp_pvlan\" "
diff --git a/templates/interfaces/ethernet/node.tag/vif-s/node.tag/vif-c/node.tag/dhcpv6-options/node.def b/templates/interfaces/ethernet/node.tag/vif-s/node.tag/vif-c/node.tag/dhcpv6-options/node.def
index c5ecf92a..ddebe05b 100644
--- a/templates/interfaces/ethernet/node.tag/vif-s/node.tag/vif-c/node.tag/dhcpv6-options/node.def
+++ b/templates/interfaces/ethernet/node.tag/vif-s/node.tag/vif-c/node.tag/dhcpv6-options/node.def
@@ -26,7 +26,7 @@ end:
exit 0
fi
- conffile=/var/lib/dhcp3/dhclient_v6_$ifname.conf
+ conffile=/var/lib/dhcp/dhclient_v6_$ifname.conf
if [ ! -e $conffile ]; then
echo "Conf file $conffile doesn't exist"
exit 0
diff --git a/templates/interfaces/ethernet/node.tag/vif-s/node.tag/vif-c/node.tag/ip/proxy-arp-pvlan/node.def b/templates/interfaces/ethernet/node.tag/vif-s/node.tag/vif-c/node.tag/ip/proxy-arp-pvlan/node.def
new file mode 100644
index 00000000..ce1dcc41
--- /dev/null
+++ b/templates/interfaces/ethernet/node.tag/vif-s/node.tag/vif-c/node.tag/ip/proxy-arp-pvlan/node.def
@@ -0,0 +1,3 @@
+help: Enable private VLAN proxy ARP on this interface
+create:expression: "sudo sh -c \"echo 1 > /proc/sys/net/ipv4/conf/$VAR(../../../../@).$VAR(../../../@).$VAR(../../@)/proxy_arp_pvlan\" "
+delete:expression: "sudo sh -c \"echo 0 > /proc/sys/net/ipv4/conf/$VAR(../../../../@).$VAR(../../../@).$VAR(../../@)/proxy_arp_pvlan\" "
diff --git a/templates/interfaces/ethernet/node.tag/vif/node.tag/dhcpv6-options/node.def b/templates/interfaces/ethernet/node.tag/vif/node.tag/dhcpv6-options/node.def
index 31237d3b..9116b354 100644
--- a/templates/interfaces/ethernet/node.tag/vif/node.tag/dhcpv6-options/node.def
+++ b/templates/interfaces/ethernet/node.tag/vif/node.tag/dhcpv6-options/node.def
@@ -26,7 +26,7 @@ end:
exit 0
fi
- conffile=/var/lib/dhcp3/dhclient_v6_$ifname.conf
+ conffile=/var/lib/dhcp/dhclient_v6_$ifname.conf
if [ ! -e $conffile ]; then
echo "Conf file $conffile doesn't exist"
exit 0
diff --git a/templates/interfaces/ethernet/node.tag/vif/node.tag/ip/proxy-arp-pvlan/node.def b/templates/interfaces/ethernet/node.tag/vif/node.tag/ip/proxy-arp-pvlan/node.def
new file mode 100644
index 00000000..49bec357
--- /dev/null
+++ b/templates/interfaces/ethernet/node.tag/vif/node.tag/ip/proxy-arp-pvlan/node.def
@@ -0,0 +1,3 @@
+help: Enable private VLAN proxy ARP on this interface
+create:expression: "sudo sh -c \"echo 1 > /proc/sys/net/ipv4/conf/$VAR(../../../@).$VAR(../../@)/proxy_arp_pvlan\" "
+delete:expression: "sudo sh -c \"echo 0 > /proc/sys/net/ipv4/conf/$VAR(../../../@).$VAR(../../@)/proxy_arp_pvlan\" "