summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2020-06-11nat: T2571: fix failing negated CLI configurationsChristian Poessinger
tested using: set nat destination rule 399 description 'Redirect DNS iot VLAN' set nat destination rule 399 destination address '!192.168.67.243-192.168.67.244' set nat destination rule 399 destination port '53' set nat destination rule 399 inbound-interface bond10.204 set nat destination rule 399 log set nat destination rule 399 protocol 'tcp_udp' set nat destination rule 399 translation address '192.168.67.243' set nat destination rule 399 translation port '53' set nat destination rule 400 description 'Redirect DNS lan VLAN' set nat destination rule 400 destination address '!192.168.67.243-192.168.67.244' set nat destination rule 400 destination port '53' set nat destination rule 400 inbound-interface bond10.204 set nat destination rule 400 log set nat destination rule 400 protocol 'tcp_udp' set nat destination rule 400 translation address '192.168.67.243' set nat destination rule 400 translation port '53' set nat destination rule 401 description 'Redirect DNS guest VLAN' set nat destination rule 401 destination address '!192.168.67.243-192.168.67.244' set nat destination rule 401 destination port '53' set nat destination rule 401 inbound-interface bond10.204 set nat destination rule 401 log set nat destination rule 401 protocol 'tcp_udp' set nat destination rule 401 translation address '192.168.67.243' set nat destination rule 401 translation port '53'
2020-06-11ssh: T2321: add VRF supportChristian Poessinger
2020-06-11ssh: T2321: use list over string when working with Config()Christian Poessinger
2020-06-11wwan: T2241: bugfix VRF assignmentChristian Poessinger
2020-06-11console: T2569: run VGA console powersave on tty1Christian Poessinger
2020-06-11console: T2569: replicate console settings to grub.cfgChristian Poessinger
2020-06-09console: T2569: only start serial console if device existsChristian Poessinger
Only start console if it exists on the running system. If a user detaches a USB serial console and reboots - it should not fail!
2020-06-09console: T2529: migrate from ttyUSB device to new device in /dev/serial/by-busChristian Poessinger
During testing it was discovered that there is a well known problem (we had for ethernet interfaces) also in the serial port world. They will be enumerated and mapped to /dev/ttyUSBxxx differently from boot to boot. This is especially painful on my development APU4 board which also has a Sierra Wireless MC7710 LTE module installed. The serial port will toggle between ttyUSB2 and ttyUSB5 depending on the amount of serial port extenders attached (FT4232H). The shipped udev rule (/usr/lib/udev/rules.d/60-serial.rules) partly solves this by enumerating the devices into /dev/serial/by-id folder with their name and serial number - it's a very good idea but I've found that not all of the FT4232H dongles have a serial number programmed - this leads to the situation that when you plug in two cables with both having serial number 0 - only one device symlink will appear - the previous one is always overwritten by the latter one. Derive /usr/lib/udev/rules.d/60-serial.rules and create a /dev/serial/by-bus directory and group devices by attached USB root port.
2020-06-09console: T2570: remove support for Hayes ModemsChristian Poessinger
Support for Hayes modems has been long gone (1.2.x) and nobody cared. It was removed in commit d582bbaf3 ("update console settings for systemd") of vyatta-cfg-system. So as there have been zero complaints - cleanup the CLI.
2020-06-09netconsole: T2561: use migrator to delete config nodesChristian Poessinger
The current implementation only works once the system has been fully booted up and the config nodes have been process. So there is no "early" kernel debugging. It is started with priority 400 (after all network stuff) - thus it has a questionable at all for Kernel debugging. It would only make sense if the entire system is changed to supply the config stuff to the Kernel commandline and then send it to a dedicated MAC address target as network will be initialized late. As there are zero Phabricator tasks available and we do not know any user using this - the "feature" will be removed.
2020-06-09console: T2569: initial implementation with XML and PythonChristian Poessinger
Migrate the serial console subsystem to XML and Python.
2020-06-08T2559: Make the sensors automatically load necessary moduleskroy
2020-06-07op-mode: T2558: version: split out CPU infoChristian Poessinger
Instead of using "show version" as catch-all command for information rather add "show system cpu" op-mode command which is analogous to "show system memory" which deals with RAM.
2020-06-07Merge branch 'udev' of github.com:c-po/vyos-1x into currentChristian Poessinger
* 'udev' of github.com:c-po/vyos-1x: usb: op-mode: T2560: display USB interface information pppoe: op-mode: T2488: retrieve log info from journalctl wwan: op-mode: T2488: retrieve log info from journalctl wwan: T2241: interface is not bond- or bridgeable wwan: T2488: remove generation of dedicated logfile wwan: T2529: migrate device from ttyUSB to usbXbY.YpZ.Z udev: T2490: add persistent USB device files
2020-06-07op-mode: T2558: fix hypervisor bug, add CPU info to "show version"kroy-the-rabbit
2020-06-07usb: op-mode: T2560: display USB interface informationChristian Poessinger
vyos@vyos:~$ show system usb /: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M |__ Port 3: Dev 4, If 0, Class=Vendor Specific Class, Driver=qcserial, 480M |__ Port 3: Dev 4, If 2, Class=Vendor Specific Class, Driver=qcserial, 480M |__ Port 3: Dev 4, If 3, Class=Vendor Specific Class, Driver=qcserial, 480M |__ Port 3: Dev 4, If 8, Class=Vendor Specific Class, Driver=qmi_wwan, 480M vyos@vyos:~$ show system usb serial No USB to serial converter connected vyos@vyos:~$ show system usb serial Device Model Vendor ------ ------ ------ usb0b1.3.3.4p1.0 Quad_RS232-HS Future Technology Devices International, Ltd usb0b1.3.3.4p1.1 Quad_RS232-HS Future Technology Devices International, Ltd usb0b1.3.3.4p1.2 Quad_RS232-HS Future Technology Devices International, Ltd usb0b1.3.3.4p1.3 Quad_RS232-HS Future Technology Devices International, Ltd usb0b1.3.4p1.0 Quad_RS232-HS Future Technology Devices International, Ltd usb0b1.3.4p1.1 Quad_RS232-HS Future Technology Devices International, Ltd usb0b1.3.4p1.2 Quad_RS232-HS Future Technology Devices International, Ltd usb0b1.3.4p1.3 Quad_RS232-HS Future Technology Devices International, Ltd usb0b1.3p1.0 MC7710 Sierra Wireless, Inc. usb0b1.3p1.2 MC7710 Sierra Wireless, Inc. usb0b1.3p1.3 MC7710 Sierra Wireless, Inc. usb0b1.4p1.0 Quad_RS232-HS Future Technology Devices International, Ltd usb0b1.4p1.1 Quad_RS232-HS Future Technology Devices International, Ltd usb0b1.4p1.2 Quad_RS232-HS Future Technology Devices International, Ltd usb0b1.4p1.3 Quad_RS232-HS Future Technology Devices International, Ltd
2020-06-07wwan: T2241: interface is not bond- or bridgeableChristian Poessinger
Commit 2cb806271928 ("wirelessmodem: T2241: make VRF and bond/bridge membership mutually exclusive") added some logic which is not forseen/neither makes sense on a dialup interface, thus it's removed again
2020-06-07wwan: T2488: remove generation of dedicated logfileChristian Poessinger
... all information are present in journald.
2020-06-07wwan: T2529: migrate device from ttyUSB to usbXbY.YpZ.ZChristian Poessinger
During testing it was discovered that there is a well known problem (we had for ethernet interfaces) also in the serial port world. They will be enumerated and mapped to /dev/ttyUSBxxx differently from boot to boot. This is especially painful on my development APU4 board which also has a Sierra Wireless MC7710 LTE module installed. The serial port will toggle between ttyUSB2 and ttyUSB5 depending on the amount of serial port extenders attached (FT4232H). The shipped udev rule (/usr/lib/udev/rules.d/60-serial.rules) partly solves this by enumerating the devices into /dev/serial/by-id folder with their name and serial number - it's a very good idea but I've found that not all of the FT4232H dongles have a serial number programmed - this leads to the situation that when you plug in two cables with both having serial number 0 - only one device symlink will appear - the previous one is always overwritten by the latter one. Derive /usr/lib/udev/rules.d/60-serial.rules and create a /dev/serial/by-bus directory and group devices by attached USB root port. vyos@vyos:~$ find /dev/serial/by-bus/ -name usb* -exec basename {} \; | sort usb0b1.3p1.0 usb0b1.3p1.2 usb0b1.3p1.3 usb0b2.4p1.0 usb0b2.4p1.1 usb0b2.4p1.2 usb0b2.4p1.3 So we have USB root 0 with bus 1.3 and port 1.0. The enumeration is constant accross reboots.
2020-06-07udev: T2490: add persistent USB device filesChristian Poessinger
During testing it was discovered that on 5 out of 10 reboots the USB enumeration/mapping from physical port to /dev/ttyUSB is different. The root cause is that it's a FIFO so first found/loaded driver module will be assigned ttyUSB0. This mixed up the serial interfaces of my FTDI chips and my connected Sierra Wireless MC7710 card which was no longer functioning as it now was mapped to a different USB interface. The solution is a udev rule which persistently maps the USB-tree-device to a device file in /dev. Wait? isn't this what /dev/serial/by-{id,path} is for? Correct, it does the very same thing but the problem is as follows: * by-path uses device file names which also incorporate the parent bus system, this results in "pci-0000:00:10.0-usb-0:2.4:1.0-port0" * by-id will overwrite the assigned device symlink if a new USB device with the same name appears. This happens to some FTDI devices with no serial number programmed so the device added last wins and will be the only one in the by-id folder - cruel world! This commit adds a new directory /dev/serial/by-bus which holds the following device files (as example): $ ls -1 /dev/serial/by-bus/ usb0b1.3p1.0 usb0b1.3p1.2 usb0b1.3p1.3 usb0b2.4p1.0 usb0b2.4p1.1 usb0b2.4p1.2 usb0b2.4p1.3
2020-06-07op-mode: version: remove unused import statementsChristian Poessinger
2020-06-06dhcpv6-pd: T2551: fix prefix length not set in configChristian Poessinger
Retrieving the CLI nodes from current config was missed out and only implemented for PPPoE.
2020-06-05dhcpv6-pd: T421: workaround for non existing interfacesChristian Poessinger
When DHCPv6-PD is configured to delegate a prefix to a non existing interface, it is restarted (systemd default) but will then hit the restart rate-limit which disables the service entirely. As VyOS currently has no "hook" to be called once an interface goes online we need this "try and error" approach until there is a way to deal with it. This behavior can be reproduced when delegating an IPv6 prefix to a bridge interface as a bridge interface will always be started after all interfaces have been configured. We will now restart dhcp6c as long as the requested interface is online.
2020-06-05Merge pull request #443 from mrozentsvayg/openvpn-T2550-ipv4-remote-hostChristian Poessinger
openvpn: T2550: fix for IPv4 remote-host addresses
2020-06-04openvpn: T2550: fix for IPv4 remote-host addressesMikhail Rozentsvayg
Commit bb9f998 added IPv6 support for OpenVPN, but IPv4 only configurations stopped working (Address family for hostname not supported) Commit fc467519 fixed some scenarios by using IPv4 protocols if 'local-host' is IPv4 address, but the client mode is using 'remote-host' instead and was still broken. This commit in addition to 'local-host' also checks all the 'remote-host' addresses.
2020-06-04op-mode: T2546: add "show login" commandsChristian Poessinger
2020-06-04Merge pull request #442 from L6NqLW/T2527Christian Poessinger
bonding: T2527: delete the last interface from bond
2020-06-01bgp: T2387: proof-of-concept using get_config_dict()Christian Poessinger
2020-05-31openvpn: T2532: add VRF supportChristian Poessinger
2020-05-30qat: use script file shipped from IntelChristian Poessinger
2020-05-30vrf: T2530: instance name must be 15 characters or lessChristian Poessinger
2020-05-29dynamic-dns: T2528: bugfix FileNotFoundError in "update dns dynamic"Christian Poessinger
Stopping and starting ddclient should only happen if the DNS dynamic service is actually configured. In addition it should always be checked if the file we try to delete really exists.
2020-05-29Revert "dynamic-dns: op-mode: add restart command"Christian Poessinger
This is actually implemented as "update dns dynamic" This reverts commit 968ea6284fe177aa0c3ace747e2027d151e2474e.
2020-05-29dynamic-dns: op-mode: add restart commandChristian Poessinger
vyos@vyos:~$ restart dns dynamic Dynamic DNS update service is not configured
2020-05-29Merge pull request #439 from thomas-mangin/T2088-explicit-airbagChristian Poessinger
airbag :T2088: make airbag explicit
2020-05-29airbag: T2088: explicit enabling of the featureThomas Mangin
airbag must now be explicitly installed. the patch also allow to fully disables the installation of the logging code at setup (and not just installing and doing nothing)
2020-05-28bonding: T2527: delete the last interface from bondGabriel Skupien
2020-05-28ethernet: T2514: add warning when changing mac for bond memberL6NqLW
2020-05-28dhcp: T2465: T2483: fix DNS resolution (pdns restatt)kroy-the-rabbit
2020-05-27ethernet: T2476: do not override MAC of lower interface if bond memberL6NqLW
2020-05-27dhcpv6-pd: pppoe: T2506: remove debug print statementChristian Poessinger
2020-05-26dhcpv6-pd: T2506: use common dictionary definition for config parametersChristian Poessinger
2020-05-26dhcpv6-pd: T2506: add option to request specific prefix lengthChristian Poessinger
Some ISPs (e.g. Comcast) only delegate a /64 by default. You have to explicitly "ask" for a bigger (e.g. /60) prefix. This commit adds a CLI node to request a specific prefix length in the range 32 - 64. dhcpv6-options { prefix-delegation { length 60 } }
2020-05-26dhcpv6-pd: pppoe: T2506: restructure CLIChristian Poessinger
Rename the CLI nodes for prefix delegation from "dhcpv6-options delegate <interface>" to "dhcpv6-options prefix-delegation interface <interface>". The change is required to add the possibility to request for specific prefix sized via the CLI. That option was not possible with the old configuration tree.
2020-05-26dhcpv6-pd: ethernet: T421: fix TypeErrorChristian Poessinger
Copy/paste error resulting in: Traceback (most recent call last): File "/usr/libexec/vyos/conf_mode/interfaces-ethernet.py", line 303, in <module> apply(c) File "/usr/libexec/vyos/conf_mode/interfaces-ethernet.py", line 205, in apply e.dhcp.v6.options['dhcpv6_pd'] = e['dhcpv6_pd'] TypeError: 'EthernetIf' object is not subscriptable
2020-05-26wwan: T1988: use "path" completion helper over dedicated shell scriptChristian Poessinger
2020-05-25vpn: T2226: missed command for show vpn remote-accessThomas Mangin
2020-05-23ping: T2457: bugfix when argument is IPv6 addressChristian Poessinger
2020-05-23ping: T2457: migrate from vyatta-opChristian Poessinger
2020-05-22login: T2492: must use try/except when adding user for the first timeChristian Poessinger