From 9d0c8946c537a1d857df67be2ffc26255c24bdbb Mon Sep 17 00:00:00 2001 From: Kim Hagen Date: Tue, 9 Feb 2016 02:08:23 -0500 Subject: Use directory /var/lib/dhcp instead of /var/lib/dhcp3. Use directory /etc/dhcp instead of /etc/dhcp3. --- templates/interfaces/ethernet/node.tag/dhcpv6-options/node.def | 2 +- .../interfaces/ethernet/node.tag/vif-s/node.tag/dhcpv6-options/node.def | 2 +- .../node.tag/vif-s/node.tag/vif-c/node.tag/dhcpv6-options/node.def | 2 +- .../interfaces/ethernet/node.tag/vif/node.tag/dhcpv6-options/node.def | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) (limited to 'templates/interfaces/ethernet') 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/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/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 -- cgit v1.2.3 From 250ce3efbd6b8a56c40cd329d43531ebf45e117d Mon Sep 17 00:00:00 2001 From: Kim Hagen Date: Tue, 6 Sep 2016 15:25:59 +0200 Subject: Some devices use ethernet switch chips which use 'lan' interfaces, this will add the option to also configure these in VyOS. --- sysconf/netdevice | 1 + templates/interfaces/ethernet/node.def | 16 ++++++++++++++-- 2 files changed, 15 insertions(+), 2 deletions(-) (limited to 'templates/interfaces/ethernet') diff --git a/sysconf/netdevice b/sysconf/netdevice index 71fc310d..43634748 100644 --- a/sysconf/netdevice +++ b/sysconf/netdevice @@ -1,6 +1,7 @@ # device name to CLI path matching lo loopback eth ethernet +lan ethernet ifb input peth pseudo-ethernet br bridge 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: ; 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 -- cgit v1.2.3 From 1415826ef3805ac970e128e42fd45496dd06d497 Mon Sep 17 00:00:00 2001 From: Date: Thu, 6 Oct 2016 15:51:44 -0300 Subject: Add support for proxy-arp-pvlan for vlan interfaces Added support for proxy-arp pvlan on vif / vif-c / vif-c-s interfaces --- .../ethernet/node.tag/vif-s/node.tag/ip/proxy-arp-pvlan/node.def | 3 +++ .../node.tag/vif-s/node.tag/vif-c/node.tag/ip/proxy-arp-pvlan/node.def | 3 +++ .../ethernet/node.tag/vif/node.tag/ip/proxy-arp-pvlan/node.def | 3 +++ 3 files changed, 9 insertions(+) create mode 100644 templates/interfaces/ethernet/node.tag/vif-s/node.tag/ip/proxy-arp-pvlan/node.def create mode 100644 templates/interfaces/ethernet/node.tag/vif-s/node.tag/vif-c/node.tag/ip/proxy-arp-pvlan/node.def create mode 100644 templates/interfaces/ethernet/node.tag/vif/node.tag/ip/proxy-arp-pvlan/node.def (limited to 'templates/interfaces/ethernet') 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/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/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..a6cf9494 --- /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(../../@)/proxy_arp_pvlan\" " +delete:expression: "sudo sh -c \"echo 0 > /proc/sys/net/ipv4/conf/$VAR(../../@)/proxy_arp_pvlan\" " -- cgit v1.2.3 From 1f52ca7fceabea209f13a2d95deed5cb2330aaae Mon Sep 17 00:00:00 2001 From: Diego Garcia del Rio Date: Thu, 6 Oct 2016 16:02:53 -0300 Subject: fix path for fiv pvlan command --- .../ethernet/node.tag/vif/node.tag/ip/proxy-arp-pvlan/node.def | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'templates/interfaces/ethernet') 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 index a6cf9494..49bec357 100644 --- 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 @@ -1,3 +1,3 @@ help: Enable private VLAN proxy ARP on this interface -create:expression: "sudo sh -c \"echo 1 > /proc/sys/net/ipv4/conf/$VAR(../../@)/proxy_arp_pvlan\" " -delete:expression: "sudo sh -c \"echo 0 > /proc/sys/net/ipv4/conf/$VAR(../../@)/proxy_arp_pvlan\" " +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\" " -- cgit v1.2.3