summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2021-03-14Merge pull request #770 from c-po/vrf-dynamic-routingChristian Poessinger
VRF: support for dynamic routing protocols OSPF and BGP
2021-03-14vyos.util: rename get_json_iface_options() -> get_interface_config()Christian Poessinger
2021-03-14vrf: T3344: move dynamic routing protocols under "vrf name <name> protocols"Christian Poessinger
Instead of having the dynamic routing protocols OSPF and BGP residing under the "protocols vrf <name> [ospf|bgp]" nodes, rather move them directly under the "vrf name <name> protocols [ospf|bgp]" node. Now all VRF related parts are placed under the same root node. This eases the verify steps tremendously, as we do not need to check wheter a VRF eists or not, it will always exist as we operate under a child node.
2021-03-14Merge pull request #772 from jack9603301/T2518Christian Poessinger
nat66: T2518: Modify the command line description of NAT/NAT66
2021-03-14vrf: bgp: T2271: create individual BGP process for specified VRF nameChristian Poessinger
The following VyOS CLI config vrf red { bgp 100 { neighbor 1.1.1.1 { peer-group foo } peer-group foo { passive password bar remote-as 200 } } } Will generaste the FRR configuration: ! router bgp 100 vrf red no bgp ebgp-requires-policy no bgp network import-check neighbor foo peer-group neighbor foo remote-as 200 neighbor foo password bar neighbor foo passive neighbor 1.1.1.1 peer-group foo !
2021-03-14bgp: T2387: add completion helper when specifying a peer-groupChristian Poessinger
2021-03-14vrf: ospf: T2271: create individual OSPF process for specified VRF nameChristian Poessinger
VyOS CLI config: vrf red { ospf { default-information { originate { always } } default-metric 30 passive-interface default } } Will create the FRR configuration snippet: ! router ospf vrf red auto-cost reference-bandwidth 100 timers throttle spf 200 1000 10000 passive-interface default default-metric 30 default-information originate always !
2021-03-14nat66: T2518: Modify the command line description of NAT/NAT66jack9603301
2021-03-13console-server: T3407: can not reuse device used for "system console"Christian Poessinger
A user can specify both "set system console device ttyS0 speed '9600'" and "set service console-server device ttyS0 speed 9600". A serial interface can not be used multiple times. commit now produces an error: vyos@vyos# commit [ service console-server ] Port "ttyS0" requires speed to be set! (cherry picked from commit 7620a8a1d6d20d4bf16e714a9d40b7bdfb133b39)
2021-03-13nat: nat66: T2518: Support operation mode commandjack9603301
2021-03-09Merge pull request #763 from bstepler/T3392Christian Poessinger
dhcp: T3392: fix VRF detection
2021-03-09Merge pull request #762 from jack9603301/T2518Christian Poessinger
nptv6: T2518: Support IPv6 address translation
2021-03-09nptv6: T2518: Support masquerade and cancel new migratorsjack9603301
2021-03-08dhcp: T3392: fix VRF detectionBrandon Stepler
2021-03-08bgp: T3391: migrate old IPv4 only maximum-paths config to new syntaxChristian Poessinger
2021-03-09nptv6: T2518: Support IPv6 address translationjack9603301
2021-03-07Revert "op-mode: T3357: Fix show_interfaces bug with tunnels"Christian Poessinger
This reverts commit e1c993f57efdf91f26a36f1d0339298e63fdf20e.
2021-03-07T3388: "show interfaces" op-mode command lacks PPPoE interfacesChristian Poessinger
Commit e5b335830ef ("vyos.ifconfig: T1579: remove calls to vyos.ifconfig.Interface.get_config()") removed the PPPoEIf class as it seemed to be unused. It turns out it is required by the op-mode commands for e.g. "show interfaces".
2021-03-04grub: T3271: don't write grub.cfg if it hasn't changedBrandon Stepler
2021-03-04Merge pull request #729 from bstepler/T3300Christian Poessinger
dhcp: T3300: add DHCP default route distance
2021-03-04Merge pull request #761 from sever-sever/T3211Christian Poessinger
ospf: T3211: Fix default isis redistribution
2021-03-04ospf: T3211: Fix default isis redistributionsever-sever
2021-03-04tunnel: T3381: fix error when switching from mGRE to GRE modeChristian Poessinger
Linux does not support changing the remote address from any (multipoint GRE as used by DMVPN) to a discrete remote address. THis will return an error: add tunnel "tun1" failed: Invalid argument This can be handled by detecting the mGRE -> GRE change and re-create the tunnel silently.
2021-03-03tunnel: T2966: add ip6gretap encapsulation supportChristian Poessinger
2021-03-02op-mode: T3357: Fix show_interfaces bug with tunnelssever-sever
2021-02-28vyos.util: provide single implementation for get_json_iface_options()Christian Poessinger
There had been four implementations of "ip -d -j link show interface" scattered accross the codebase. Those implementations have now been combined into a new helper: vyos.util.get_json_iface_options()
2021-02-28l2tpv3: T3366: migrate local-ip and remote-ip CLI optionsChristian Poessinger
Rename CLI options local-ip to source-address and remote-ip to remote to get a consistent CLI experience for the user.
2021-02-28validators: fqdn: T3370: support "private" or "local" domain namesChristian Poessinger
2021-02-28Merge pull request #747 from c-po/vxlan-tunnel-parametersChristian Poessinger
vyos.ifconfig: cleanup and tunnel refactoring
2021-02-28tunnel: T3366: rename remote-ip to remoteChristian Poessinger
Streamline the CLI configuration where we try to use remote on other interfaces like vxlan, geneve.
2021-02-28tunnel: T3366: rename local-ip to source-addressChristian Poessinger
Streamline the CLI configuration where we try to use source-address when creating connections which are especially sourced from a discrete address.
2021-02-28tunnel: T3364: rename encapsulation mode "gre-bridge" to "gretap"Christian Poessinger
The following list shows the mapping of VyOS tunnel encapsulation modes to the corresponding Linux modes. VyOS Linux gre gre gre-bridge gretap ipip ipip ipip6 ipip6 ip6ip6 ip6ip6 ip6gre ip6gre sit sit Besides gre-bridge this is pretty consistent. As bridge interfaces are also called tap interfaces gre-bridge will be renamed to gretap to make the post-processing much easier. This means (in detail) that there are no more child classes of _Tunnel and there will be now one geneirc TunnelIf class handling all sorts of encapsulation.
2021-02-28vyos.ifconfig: T1579: remove calls to vyos.ifconfig.Interface.get_config()Christian Poessinger
Interface.get_config() was always a pure helper which exposed a "per interface type" dictionary which was then fed by the caller to create interfaces by iproute2 which required additional options during creation time. Such interfaces had been: * tunnel * vxlan * geneve * macsec * wifi * macvlan / pseudo-ethernet The code was always duplicated to convert from the VyOS CLI based get_config_dict() to a dict which can be used to feed iproute2. This path has been removed and we now always feed in the entire dictionary retrieved by get_config_dict() or in the interfaces case, it's high-level wrapper get_interface_dict() to the interface we wan't to create. This also adds the - personally long awaited - possibility to get rid of the derived tunnel classes for e.g. GRE, IPIP, IPIP6 and so on.
2021-02-27bgp: T3225: is_addr_assigned should check only ipv4 ipv6 neighborssever-sever
2021-02-26bgp: T3320: Add checks for peer-groupsever-sever
2021-02-26bgp: T3225: Move is_addr_assigned check to netighborsever-sever
2021-02-26bgp: T3225: Checks if neighbor configured as system addresssever-sever
2021-02-26bgp: T3324: Add checks for peer passwordsever-sever
2021-02-26bgp: T3323: Add verify for ttl-security and ebgp-multihopsever-sever
2021-02-25configd: T3302: set mode correctly on open for redirectJohn Estabrook
2021-02-24test: remove "test_ethtool.py" as this does not run on JenkinsChristian Poessinger
2021-02-24ethernet: T3163: fix typos in vyos.ethtool commentsChristian Poessinger
2021-02-24ethernet: T3163: not all NIC drivers support ring-buffer configurationChristian Poessinger
In addition to commit cf1156a60e ("ethernet: T3163: probe driver for maximum rx/tx ring-buffer size") this extends the logic in a way as not every driver supports setting the buffers at all so it will properly error out. When invoking "ethtool -g" both stdout and stderr are captured and no exception is raised if it's an unsupported driver feature. The verify() section will inform the user about the illegal operation.
2021-02-24validators: interface-name script must also support VLAN interfacesChristian Poessinger
2021-02-23configd: T3302: redirect script stdout/err to file on bootJohn Estabrook
2021-02-23dhcp-server: T2927: Add empty args if does not possible to determine variablesDmitriyEshenko
2021-02-22tunnel: T3072: remove duplicate key from mapping dict used in apply()Christian Poessinger
2021-02-22Merge branch 'current' of https://github.com/vyos/vyos-1x into currentDaniil Baturin
2021-02-22T3346: handle the case of empty nodes when migrating NAT to syntax version 5Daniil Baturin
2021-02-21ethernet: T3163: probe driver for maximum rx/tx ring-buffer sizeChristian Poessinger