Page MenuHomeVyOS Platform
Feed Advanced Search

Apr 11 2020

thomas-mangin added a comment to T2171: Unify creation and manipulation of interfaces.

with T2238 interface can be listed using their feature definition (broadcast, bonding, bridge ...).

Apr 11 2020, 10:30 PM · VyOS 1.4 Sagitta
thomas-mangin reopened T2226: unify all the ways commands are run as "Open".

@zsdc asked if we could find out a better API for the command and there is an issue where it seems that the environment dict passed to Popen() is not working as expected.

Apr 11 2020, 10:26 PM
thomas-mangin added a comment to T291: support for Predictable Network Interface Names.

on any equipment with many interfaces, you would expect "port 0" to be "eth0", etc. As vendors are likely to give incremental mac addresses to their interfaces, could the hardware mac address be used at boot to order the interfaces? adding new interfaces may cause a re-numbering but it would give stability on if the hardware does not change.

Apr 11 2020, 10:24 PM · VyOS 1.5 Circinus
thomas-mangin added a comment to T2267: equuleus: Autogenerating deb package version number for internal packages.

Naming convention seems fine.

Apr 11 2020, 10:12 PM · VyOS 1.3 Equuleus (1.3.7)
thomas-mangin added a comment to T2238: After re-writing list_interfaces.py to use Interfaces() pseudo-ethernet is missing.
Apr 11 2020, 9:50 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2270: using load with scp/sftp and a username and password does not work.

It is a useful feature .. please do not kill, This patch will fix things until it can be looked into 🤕

Apr 11 2020, 8:00 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin closed T2238: After re-writing list_interfaces.py to use Interfaces() pseudo-ethernet is missing as Resolved.
Apr 11 2020, 7:47 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2238: After re-writing list_interfaces.py to use Interfaces() pseudo-ethernet is missing.

https://github.com/vyos/vyos-1x/pull/331

Apr 11 2020, 6:13 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2253: Fix use of cmd in merge config and remote function helpers.
fingerprint = cmd(fingerprint_cmd, shell=True, stderr=DEVNULL)

I have converted this to

fingerprint = cmd(fingerprint_cmd,  stderr=DEVNULL, input=input=host_key)
Apr 11 2020, 2:01 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin claimed T2223: convert operational show interfaces to python/XML.
Apr 11 2020, 1:20 PM · VyOS 1.3 Equuleus (1.3.6)
thomas-mangin added a comment to T2186: Provide more information to the user when a traceback is reported to the user.

ok will add the feature once the current set of patch waiting approval are in to not have to deal with rebasing etc :-)

Apr 11 2020, 12:20 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2265: DHCP to be an attribute of the class instead of a inheritance.

The works also include the migration of template to separate files as per T2230

Apr 11 2020, 12:18 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2186: Provide more information to the user when a traceback is reported to the user.

It will not intercept what is printed by executed programs. I could add an option for the functions to have stderr intercepted and printed by VyOS (causing program errors to go to logs)

Apr 11 2020, 11:19 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2186: Provide more information to the user when a traceback is reported to the user.

Everything sent to stderr will both go to the screen and syslog.
If you raise it auto-magically format the raised exception to the user (the traceback is sent to stderr and thefore goes to syslog)

Apr 11 2020, 10:52 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2268: DHCPv6 is broken.
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:d9:5b:04 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.255 scope global dynamic eth0
       valid_lft 78872sec preferred_lft 78872sec
    inet6 fe80::a00:27ff:fed9:5b04/64 scope link
       valid_lft forever preferred_lft forever
Apr 11 2020, 9:59 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin renamed T2270: using load with scp/sftp and a username and password does not work from using load with a username and password does not work to using load with scp/sftp and a username and password does not work.
Apr 11 2020, 9:31 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin assigned T2270: using load with scp/sftp and a username and password does not work to jestabro.
Apr 11 2020, 9:29 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin updated subscribers of T2270: using load with scp/sftp and a username and password does not work.

This naive patch fixes the issue but I am not sure it is correct and will let @jestabro decide how to handle it (as git gives him as the author of the file)

diff --git a/python/vyos/remote.py b/python/vyos/remote.py
index f8a21f0..a69537e 100644
--- a/python/vyos/remote.py
+++ b/python/vyos/remote.py
@@ -140,10 +140,18 @@ def get_remote_config(remote_file):
                 print('HTTP error: {0} {1}'.format(*val))
                 sys.exit(1)
Apr 11 2020, 9:29 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin created T2270: using load with scp/sftp and a username and password does not work.
Apr 11 2020, 9:21 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2238: After re-writing list_interfaces.py to use Interfaces() pseudo-ethernet is missing.

Yes, it is missing, nothing to do with me but the fact the code does not yet find what is what from the interface data as we discussed.
https://github.com/vyos/vyos-1x/commit/bbea850ea5f8ff0402cd276ab63963ece7e0c763#diff-667867449bff9faf1ac285125ceada77

Apr 11 2020, 1:08 AM · VyOS 1.3 Equuleus (1.3.0)

Apr 10 2020

thomas-mangin renamed T2265: DHCP to be an attribute of the class instead of a inheritance from Move DHCP from inside Interface to DHCP to be an attribute of the class instead of a inheritance.
Apr 10 2020, 9:37 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin closed T2265: DHCP to be an attribute of the class instead of a inheritance as Resolved.
Apr 10 2020, 9:36 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2265: DHCP to be an attribute of the class instead of a inheritance.

https://github.com/vyos/vyos-1x/pull/326

Apr 10 2020, 9:36 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin created T2268: DHCPv6 is broken.
Apr 10 2020, 9:35 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin created T2265: DHCP to be an attribute of the class instead of a inheritance.
Apr 10 2020, 4:35 PM · VyOS 1.3 Equuleus (1.3.0)

Apr 9 2020

thomas-mangin added a comment to T2205: "set interface ethernet" fails on Hyper-V.

https://github.com/vyos/vyos-1x/pull/319

Apr 9 2020, 2:03 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2205: "set interface ethernet" fails on Hyper-V.

It let you know ufo could not be changed, but your interface will work :-)

Apr 9 2020, 1:26 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2205: "set interface ethernet" fails on Hyper-V.

Yes, it is as you have as file in /tmp/vyos.interface.debug' which turns on this debugging :-)

Apr 9 2020, 12:16 PM · VyOS 1.3 Equuleus (1.3.0)

Apr 8 2020

thomas-mangin added a comment to T2171: Unify creation and manipulation of interfaces.

There is an issue with storing the state of the interface and then applying it in bulk. For some interface we want to admin it down before performing change and then bringing it back up.
If we store this then only the change and the up command will be applied, this is not going to work.

Apr 8 2020, 4:56 PM · VyOS 1.4 Sagitta
thomas-mangin added a comment to T2204: Support tunnel source-interface.

@cpo should another task be created to make sure we exclude the interfaces themself from source-interface (s) ?

Apr 8 2020, 4:50 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin closed T2242: Remove import * from the code as Resolved.
Apr 8 2020, 4:48 PM
thomas-mangin added a comment to T2242: Remove import * from the code.

https://github.com/vyos/vyos-1x/pull/316

Apr 8 2020, 4:48 PM
thomas-mangin closed T2186: Provide more information to the user when a traceback is reported to the user as Resolved.
Apr 8 2020, 4:06 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2186: Provide more information to the user when a traceback is reported to the user.

https://github.com/vyos/vyos-1x/pull/314

Apr 8 2020, 4:04 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin claimed T2242: Remove import * from the code.
Apr 8 2020, 3:39 PM
thomas-mangin created T2242: Remove import * from the code.
Apr 8 2020, 3:24 PM
thomas-mangin added a comment to T2186: Provide more information to the user when a traceback is reported to the user.

thanks to @runborg .. my own initial attempt to syslog failed (facility level ??)
This works

import logging
import logging.handlers
my_logger = logging.getLogger('MyLogger')  # logger is singleton
my_logger.setLevel(logging.DEBUG)
handler = logging.handlers.SysLogHandler(address='/dev/log', facility="auth")
my_logger.addHandler(handler)
my_logger.critical('this is critical')
Apr 8 2020, 12:07 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2186: Provide more information to the user when a traceback is reported to the user.
from shlex import quote
def systemd(self, level, message):
    msg = quote(message)
    run(f'echo {msg} | systemd-cat -p {self.level}')
Apr 8 2020, 11:53 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2186: Provide more information to the user when a traceback is reported to the user.
# sudo lsof  | grep dev-log
I am officially daft .. I thought it was not running !
Apr 8 2020, 11:27 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin updated subscribers of T2186: Provide more information to the user when a traceback is reported to the user.

@dmbaturin I was aked on slack to report the information via syslog. However the syslog server is not listening on on UDP port 514 on localhost. How would you like to proceed ?
should it be opened (I am not sure where this should be configured) or should the log be written on the drive using the python logging module (as I currently have implemented).

Apr 8 2020, 10:44 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin updated the task description for T2057: Generalised Interface configuration.
Apr 8 2020, 10:42 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2232: Prevent deletion of bridge member interfaces.

@cpo AFAIU the patches are not right as the code making use of Config() in the verify() section and AFAIU this is against the separation between get_config()

Apr 8 2020, 10:28 AM · Restricted Project, VyOS 1.5 Circinus

Apr 7 2020

thomas-mangin closed T2190: Instantiating Interfaces without risk of creation as Resolved.
Apr 7 2020, 3:02 PM
thomas-mangin claimed T2190: Instantiating Interfaces without risk of creation.
Apr 7 2020, 3:02 PM
thomas-mangin closed T2226: unify all the ways commands are run as Resolved.
Apr 7 2020, 3:01 PM

Apr 5 2020

thomas-mangin updated the task description for T2226: unify all the ways commands are run.
Apr 5 2020, 12:25 PM
thomas-mangin renamed T2226: unify all the ways commands are run from unify all the ways command are run to unify all the ways commands are run.
Apr 5 2020, 12:08 PM
thomas-mangin renamed T2226: unify all the ways commands are run from remove duplication to unify all the ways command are run.
Apr 5 2020, 12:07 PM

Apr 4 2020

thomas-mangin created T2226: unify all the ways commands are run.
Apr 4 2020, 9:29 PM
thomas-mangin created T2223: convert operational show interfaces to python/XML.
Apr 4 2020, 4:29 PM · VyOS 1.3 Equuleus (1.3.6)
thomas-mangin closed T2158: Commit fails if ethernet interface doesn't support flow control (pause) as Resolved.

I could not tell you why it was decided to be this way.

Apr 4 2020, 4:15 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin closed T2183: A number of bugs with wireguard script due to interface rearrangement as Resolved.
Apr 4 2020, 4:12 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2184: OpenVPN op_mode tools broken.

As indicated, I could not test this patch.

Apr 4 2020, 4:10 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2184: OpenVPN op_mode tools broken.

https://github.com/vyos/vyos-1x/pull/300

Apr 4 2020, 4:10 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin closed T2028: Convert "interfaces tunnel" to new XML/Python representation, a subtask of T1579: Rewrite all interface types in new XML/Python style, as Resolved.
Apr 4 2020, 3:20 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin closed T2028: Convert "interfaces tunnel" to new XML/Python representation as Resolved.
Apr 4 2020, 3:20 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin closed T2104: ifconfig.py size as Resolved.

This work is now completed.

Apr 4 2020, 3:19 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2182: Failure to commit an IPv6 address on a tunnel interface.

@kroy could you please confirm that we can close this issue :-)

Apr 4 2020, 3:17 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2205: "set interface ethernet" fails on Hyper-V.

https://github.com/vyos/vyos-1x/pull/299

Apr 4 2020, 1:42 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2205: "set interface ethernet" fails on Hyper-V.

@jjakob thank you for the detail. I will work on it.

Apr 4 2020, 9:26 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a subtask for T1148: epa2 BGP peers initiate before config is fully loaded, routes leak.: T2215: Make “default no-ipv4-unicast” the default setting.
Apr 4 2020, 8:31 AM · VyOS 1.3 Equuleus (1.3.0-epa1)
thomas-mangin added a parent task for T2215: Make “default no-ipv4-unicast” the default setting: T1148: epa2 BGP peers initiate before config is fully loaded, routes leak..
Apr 4 2020, 8:30 AM · VyOS 1.3 Equuleus (1.3.6)
thomas-mangin created T2215: Make “default no-ipv4-unicast” the default setting.
Apr 4 2020, 8:28 AM · VyOS 1.3 Equuleus (1.3.6)

Apr 3 2020

thomas-mangin added a comment to T2186: Provide more information to the user when a traceback is reported to the user.

I agree: the logs should reflect the actions performed to update the router following the configuration change. As this should be the same each time, we should be able to check a change with a saved replay, as a way to check that all is as should (part of the smoketest testing).

Apr 3 2020, 1:20 PM · VyOS 1.3 Equuleus (1.3.0)

Mar 31 2020

thomas-mangin added a comment to T2184: OpenVPN op_mode tools broken.

@cpo is it what you have in mind:

Mar 31 2020, 4:56 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin created T2190: Instantiating Interfaces without risk of creation.
Mar 31 2020, 4:53 PM
thomas-mangin added a comment to T2184: OpenVPN op_mode tools broken.

@jjakob if what you say is correct then the solution should look like. I can not test it tho (simply as I do not know how to setup OpenVPN and have no lab to make it work).

Mar 31 2020, 4:30 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin created T2187: Python Unit testing.
Mar 31 2020, 10:06 AM · VyOS 1.5 Circinus
thomas-mangin created T2186: Provide more information to the user when a traceback is reported to the user.
Mar 31 2020, 8:20 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2184: OpenVPN op_mode tools broken.

Thank you for the assignment but I have not looked at or touched the OpenVPN code (and never used OpenVPN myself).
This issue with the op_mode, not config mode, so so it must have been there for a while.
I could change the code to check that the file exist, and prevent this fault but I am not sure it would be the right thing todo.

Mar 31 2020, 8:03 AM · VyOS 1.3 Equuleus (1.3.0)

Mar 30 2020

thomas-mangin updated the task description for T2182: Failure to commit an IPv6 address on a tunnel interface.
Mar 30 2020, 9:58 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2182: Failure to commit an IPv6 address on a tunnel interface.

https://github.com/vyos/vyos-1x/pull/287

Mar 30 2020, 9:49 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin claimed T2182: Failure to commit an IPv6 address on a tunnel interface.
Mar 30 2020, 9:45 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin updated the task description for T2182: Failure to commit an IPv6 address on a tunnel interface.
Mar 30 2020, 9:40 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin created T2182: Failure to commit an IPv6 address on a tunnel interface.
Mar 30 2020, 9:29 PM · VyOS 1.3 Equuleus (1.3.0)

Mar 28 2020

thomas-mangin added a comment to T2173: Add the ability to use VRF on VTI interfaces.

It requires a migration of the VTI interface to python first.

Mar 28 2020, 10:02 PM · VyOS 1.4 Sagitta
thomas-mangin added a comment to T2171: Unify creation and manipulation of interfaces.

Regarding the reference counter for changes. It can also be implemented by storing in an Interface specific class level dictionary the last know state of the interface.
However, should multiple instances of the class be run by multiple programs then this could become problematic and this limitation should be kept in mind.

Mar 28 2020, 10:57 AM · VyOS 1.4 Sagitta
thomas-mangin added a comment to T2171: Unify creation and manipulation of interfaces.

The recent change in implementation have changed the code from "if/else" to data-driven.
For example, every class now has a "definition" dictionary which indicates what the interface can/cannot do, for example, be bonded or not or it it supports vlan.

Mar 28 2020, 10:52 AM · VyOS 1.4 Sagitta
thomas-mangin added a comment to T2171: Unify creation and manipulation of interfaces.

There this three types of functions which as class can have:

  • "normal" when the first argument is "self"
  • classmethod (using the @classmethod decorator before the function). In that case self replaced from an instance of the class by a reference to the class itself (often called cls, in that case InterfaceClass)
  • staticmethod (where the function does not need class data and is jus placed under the class) can be called with InterfaceClass.func()
Mar 28 2020, 10:31 AM · VyOS 1.4 Sagitta

Mar 26 2020

thomas-mangin added a comment to T2158: Commit fails if ethernet interface doesn't support flow control (pause).

https://github.com/vyos/vyos-1x/pull/272

Mar 26 2020, 1:06 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2158: Commit fails if ethernet interface doesn't support flow control (pause).

Thanks - understood.

Mar 26 2020, 11:11 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2158: Commit fails if ethernet interface doesn't support flow control (pause).

Hi jjakob, AFAICS the patch above should have fixed any problem with the ethtool. If not I will need to understand why.

Mar 26 2020, 9:24 AM · VyOS 1.3 Equuleus (1.3.0)

Mar 25 2020

thomas-mangin added a comment to T2158: Commit fails if ethernet interface doesn't support flow control (pause).

was this was not already fixed ?
https://github.com/vyos/vyos-1x/commit/8f39784c847801c0b766a0c9289da0976ffd0604#diff-ca1457dc16e0b9a43de02cf08140b65aR123

Mar 25 2020, 7:15 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2158: Commit fails if ethernet interface doesn't support flow control (pause).

let me try to put a quick patch for you.

Mar 25 2020, 7:06 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2158: Commit fails if ethernet interface doesn't support flow control (pause).

we can fix it in two ways: undo the commit which check the return code of the program, hiding the issue and add a first BIG PRINT warning stage or find the root cause and fix it (harder).

Mar 25 2020, 7:04 PM · VyOS 1.3 Equuleus (1.3.0)

Mar 24 2020

thomas-mangin added a comment to T2154: BCM57810 nic fails to start.

also all calls to start-stop-daemon need to have a --oknodo option added

Mar 24 2020, 8:14 PM

Mar 23 2020

thomas-mangin added a comment to T2014: Use vendor specific NTP Pool hostname.

I believe your default settings are not bad as, in our case, we are part of the ntp pool and our kit will use our own NTP servers :-)

Mar 23 2020, 7:47 PM · VyOS 1.3 Equuleus (1.3.5)
thomas-mangin closed T2154: BCM57810 nic fails to start as Resolved.
Mar 23 2020, 6:45 PM
thomas-mangin added a comment to T2154: BCM57810 nic fails to start.

pushed https://github.com/vyos/vyos-1x/pull/261 which should fix the issue.
@lluu131 if you know how to use vi and only if you are sure you can run:

sudo vi /usr/lib/python3/dist-packages/vyos/ifconfig/ethernet.py +123

and you change CalledProcessError with RuntimeError

Mar 23 2020, 6:45 PM

Mar 9 2020

thomas-mangin created T2114: Use unique interface name prefix for each tunnel type.
Mar 9 2020, 1:59 PM · VyOS 1.5 Circinus

Mar 8 2020

thomas-mangin changed the status of T2109: Ping by name broken in VyOS 1.3-rolling-202003080217 from Confirmed to In progress.
Mar 8 2020, 8:32 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2109: Ping by name broken in VyOS 1.3-rolling-202003080217.

sorry for this oversight.

Mar 8 2020, 8:28 PM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin added a comment to T2109: Ping by name broken in VyOS 1.3-rolling-202003080217.

https://github.com/vyos/vyatta-op/pull/36

Mar 8 2020, 8:28 PM · VyOS 1.3 Equuleus (1.3.0)

Mar 6 2020

thomas-mangin added a comment to T2104: ifconfig.py size.

PR https://github.com/vyos/vyos-1x/pull/242

Mar 6 2020, 12:49 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin reopened T2104: ifconfig.py size as "Needs testing".
Mar 6 2020, 12:48 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin closed T2104: ifconfig.py size as Resolved.
Mar 6 2020, 12:47 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin changed the status of T2104: ifconfig.py size from Open to Needs testing.
Mar 6 2020, 12:46 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin claimed T2104: ifconfig.py size.
Mar 6 2020, 12:46 AM · VyOS 1.3 Equuleus (1.3.0)
thomas-mangin updated the task description for T2104: ifconfig.py size.
Mar 6 2020, 12:45 AM · VyOS 1.3 Equuleus (1.3.0)

Mar 5 2020

thomas-mangin created T2104: ifconfig.py size.
Mar 5 2020, 11:10 PM · VyOS 1.3 Equuleus (1.3.0)