summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
m---------docs/_include/vyos-1x0
-rw-r--r--docs/changelog/1.3.rst66
-rw-r--r--docs/changelog/1.4.rst74
-rw-r--r--docs/configuration/protocols/bfd.rst8
-rw-r--r--docs/documentation.rst2
-rw-r--r--docs/installation/virtual/proxmox.rst42
-rw-r--r--docs/introducing/history.rst162
7 files changed, 293 insertions, 61 deletions
diff --git a/docs/_include/vyos-1x b/docs/_include/vyos-1x
-Subproject 0a0d4abc02da89f68d453495ec002d2afecfca7
+Subproject 812d9770619b968b04961aebf3944fde13df491
diff --git a/docs/changelog/1.3.rst b/docs/changelog/1.3.rst
index a6cb40b2..ab805dac 100644
--- a/docs/changelog/1.3.rst
+++ b/docs/changelog/1.3.rst
@@ -8,6 +8,69 @@
_ext/releasenotes.py
+2022-02-13
+==========
+
+* :vytask:`T4242` (bug): ethernet speed/duplex can never be switched back to auto/auto
+* :vytask:`T4191` (bug): Lost access to host after VRF re-creating
+
+
+2022-02-11
+==========
+
+* :vytask:`T3872` (feature): Add configurable telegraf monitoring service
+* :vytask:`T4234` (bug): Show firewall partly broken in 1.3.x
+
+
+2022-02-10
+==========
+
+* :vytask:`T4165` (bug): Delete custom conntrack timeout firewall bug
+
+
+2022-02-08
+==========
+
+* :vytask:`T4227` (bug): Typo in help completion of hello-time option of bridge interface
+
+
+2022-02-07
+==========
+
+* :vytask:`T4233` (bug): ssh: sync regex for allow/deny usernames to "system login"
+* :vytask:`T4087` (feature): IPsec IKE-group proposals limit of 10 pieces
+
+
+2022-02-06
+==========
+
+* :vytask:`T4228` (bug): bond: OS error thrown when two bonds use the same member
+
+
+2022-02-05
+==========
+
+* :vytask:`T4226` (bug): VRRP transition-script does not work for groups name which contains -(minus) sign
+
+
+2022-02-04
+==========
+
+* :vytask:`T4196` (bug): DHCP server client-prefix-length parameter results in non-functional leases
+
+
+2022-02-03
+==========
+
+* :vytask:`T3643` (bug): show vpn ipsec sa doesn't show tunnels in "down" state
+
+
+2022-02-01
+==========
+
+* :vytask:`T4198` (bug): Error shown on commit
+
+
2022-01-29
==========
@@ -18,7 +81,6 @@
==========
* :vytask:`T4184` (bug): NTP allow-clients address doesn't work it allows to use ntp server for all addresses
-* :vytask:`T4115` (bug): reboot in <x> not working as expected
2022-01-24
@@ -1437,7 +1499,7 @@
2021-02-16
==========
-* :vytask:`T3318` (feature): Update Linux Kernel to v5.4.174 / 5.10.94
+* :vytask:`T3318` (feature): Update Linux Kernel to v5.4.178 / 5.10.99
2021-02-14
diff --git a/docs/changelog/1.4.rst b/docs/changelog/1.4.rst
index 613c87e7..1f67151b 100644
--- a/docs/changelog/1.4.rst
+++ b/docs/changelog/1.4.rst
@@ -8,6 +8,77 @@
_ext/releasenotes.py
+2022-02-13
+==========
+
+* :vytask:`T4242` (bug): ethernet speed/duplex can never be switched back to auto/auto
+* :vytask:`T4191` (bug): Lost access to host after VRF re-creating
+
+
+2022-02-11
+==========
+
+* :vytask:`T3872` (feature): Add configurable telegraf monitoring service
+
+
+2022-02-10
+==========
+
+* :vytask:`T4235` (default): Add config tree diff algorithm
+
+
+2022-02-08
+==========
+
+* :vytask:`T4227` (bug): Typo in help completion of hello-time option of bridge interface
+
+
+2022-02-07
+==========
+
+* :vytask:`T4233` (bug): ssh: sync regex for allow/deny usernames to "system login"
+
+
+2022-02-06
+==========
+
+* :vytask:`T4223` (bug): policy route cannot have several entries with the same table
+* :vytask:`T4216` (bug): Firewall: can't use negated groups in firewall rules
+* :vytask:`T4178` (bug): policy based routing tcp flags issue
+* :vytask:`T4164` (bug): PBR: network groups (as well as address and port groups) don't resolve in `nftables_policy.conf`
+* :vytask:`T3970` (feature): Add support for op-mode PKI direct install into an active config session
+* :vytask:`T3828` (bug): ipsec: Subtle change in "pfs enable" behavior from equuleus -> sagitta
+* :vytask:`T4228` (bug): bond: OS error thrown when two bonds use the same member
+
+
+2022-02-05
+==========
+
+* :vytask:`T4226` (bug): VRRP transition-script does not work for groups name which contains -(minus) sign
+
+
+2022-02-04
+==========
+
+* :vytask:`T4196` (bug): DHCP server client-prefix-length parameter results in non-functional leases
+
+
+2022-02-03
+==========
+
+* :vytask:`T4218` (bug): firewall: rule name is not allowed to start with a number
+* :vytask:`T3643` (bug): show vpn ipsec sa doesn't show tunnels in "down" state
+
+
+2022-02-01
+==========
+
+* :vytask:`T4224` (bug): Ethernet interfaces configured for DHCP not working on latest rolling snapshot (vyos-1.4-rolling-202201291849-amd64.iso)
+* :vytask:`T4225` (bug): Performance degration with latest rolling release
+* :vytask:`T4220` (bug): Commit broke dhclient 78b247b724f74bdabab0706aaa7f5b00e5809bc1
+* :vytask:`T4138` (bug): NAT configuration allows to set incorrect port range and invalid port
+
+
2022-01-29
==========
@@ -18,7 +89,6 @@
==========
* :vytask:`T4184` (bug): NTP allow-clients address doesn't work it allows to use ntp server for all addresses
-* :vytask:`T4115` (bug): reboot in <x> not working as expected
* :vytask:`T4217` (bug): firewall: port-group requires protocol to be set - but not in VyOS 1.3
@@ -1699,7 +1769,7 @@
==========
* :vytask:`T3313` (bug): ospfv3 interface missing options
-* :vytask:`T3318` (feature): Update Linux Kernel to v5.4.174 / 5.10.94
+* :vytask:`T3318` (feature): Update Linux Kernel to v5.4.178 / 5.10.99
2021-02-15
diff --git a/docs/configuration/protocols/bfd.rst b/docs/configuration/protocols/bfd.rst
index 60f9ffd0..dac1bf0f 100644
--- a/docs/configuration/protocols/bfd.rst
+++ b/docs/configuration/protocols/bfd.rst
@@ -1,4 +1,4 @@
-:lastproofread: 2021-09-28
+:lastproofread: 2022-02-05
.. include:: /_include/need_improvement.txt
@@ -72,11 +72,11 @@ Enable BFD in BGP
Enable BFD in OSPF
------------------
-.. cfgcmd:: set interfaces ethernet <interface> ip ospf bfd
+.. cfgcmd:: set protocols ospf interface <interface> bfd
Enable BFD for OSPF on an interface
-.. cfgcmd:: set interfaces ethernet <interface> ipv6 ospfv3 bfd
+.. cfgcmd:: set protocols ospfv3 interface <interface> bfd
Enable BFD for OSPFv3 on an interface
@@ -93,7 +93,7 @@ Enable BFD in ISIS
Operational Commands
====================
-.. opcmd:: show protocols bfd peer
+.. opcmd:: show bfd peers
Show all BFD peers
diff --git a/docs/documentation.rst b/docs/documentation.rst
index 00db6e56..77cd5cc4 100644
--- a/docs/documentation.rst
+++ b/docs/documentation.rst
@@ -91,7 +91,7 @@ access to the official codebase.
for writing our docs. Additional directives how to write in RST can be
obtained from reStructuredTextDirectives_.
-* Check your changes by locally building the documentation ``$ make html``.
+* Check your changes by locally building the documentation ``$ make livehtml``.
Sphinx will build the html files in the ``docs/_build`` folder. We provide
you with a Docker container for an easy-to-use user experience. Check the
README.md_ file of this repository.
diff --git a/docs/installation/virtual/proxmox.rst b/docs/installation/virtual/proxmox.rst
index 43c478f5..d3d77dc6 100644
--- a/docs/installation/virtual/proxmox.rst
+++ b/docs/installation/virtual/proxmox.rst
@@ -7,31 +7,49 @@ Running on Proxmox
Proxmox is an open-source platform for virtualization. Users with a support
subscription can download a qcow2 image that can be imported into Proxmox.
-Deploy VyOS from CLI
-====================
+Deploy VyOS from CLI with qcow2 image
+=====================================
+ A prebuilt image in qcow2 format is available to all VyOS subscribers for download and use directly within Proxmox.
-Copy the qcow2 image to a temporary directory on the Proxmox server.
-
-The commands below assume that virtual machine ID 200 is unused and that
-the user wants the disk stored in a storage pool called `local-lvm`.
+1. Copy the qcow2 image to a temporary directory on the Proxmox server.
+2. The commands below assume that virtual machine ID 200 is unused and that the user wants the disk stored in a storage pool called `local-lvm`.
.. code-block:: none
$ qm create 200 --name vyos2 --memory 2048 --net0 virtio,bridge=vmbr0
- $ qm importdisk 200 vyos-1.2.8-proxmox-2G.qcow2 local-lvm
+ $ qm importdisk 200 /path/to/image/vyos-1.2.8-proxmox-2G.qcow2 local-lvm
$ qm set 200 --virtio0 local-lvm:vm-200-disk-0
$ qm set 200 --boot order=virtio0
-Optionally, the user can attach a CDROM with an ISO as a cloud-init data
-source. The below command assumes the ISO has been uploaded to the
-`local` storage pool with the name `seed.iso`.
+3. Optionally, the user can attach a CDROM with an ISO as a cloud-init data source. The below command assumes the ISO has been uploaded to the `local` storage pool with the name `seed.iso`.
+
+.. code-block:: none
+
+ $ qm set 200 --ide2 media=cdrom,file=local:iso/seed.iso
+
+4. Start the virtual machine in the proxmox GUI or CLI using ``qm start 200``.
+
+
+
+Deploy VyOS from CLI with rolling release ISO
+=============================================
+
+1. Download the rolling release iso from https://vyos.net/get/nightly-builds/. Non-subscribers can always get the LTS release by building it from source. Instructions can be found in the :ref:`build` section of this manual. VyOS source code repository is available https://github.com/vyos/vyos-build.
+2. Prepare VM for installation from ISO media. The commands below assume that your iso is available in a storage pool 'local', that you want it to have a VM ID '200' and want to create a new disk on storage pool 'local-lvm' of size 15GB.
.. code-block:: none
- $ qm set 101 --ide2 media=cdrom,file=local:iso/seed.iso
+ qm create 200 --name vyos --memory 2048 --net0 virtio,bridge=vmbr0 --ide2 media=cdrom,file=local:iso/live-image-amd64.hybrid.iso --virtio0 local-lvm:15
+3. Start the VM using the command ``qm start 200`` or using the start button located in the proxmox GUI.
+4. Using the proxmox webGUI, open the virtual console for your newly created vm. Login username/password is ``vyos/vyos``.
+5. Once booted into the live system, type ``install image`` into the command line and follow the prompts to install VyOS to the virtual drive.
+6. After installation has completed, remove the installation iso using the GUI or ``qm set 200 --ide2 none``.
+7. Reboot the virtual machine using the GUI or ``qm reboot 200``.
+
+
+
-Start the virtual machine in the proxmox GUI or CLI using ``qm start 200``.
Visit https://www.proxmox.com/en/ for more information about the download
and installation of this hypervisor.
diff --git a/docs/introducing/history.rst b/docs/introducing/history.rst
index 9a13e2b3..054eecd6 100644
--- a/docs/introducing/history.rst
+++ b/docs/introducing/history.rst
@@ -4,44 +4,126 @@
History
#######
-VyOS is a Linux-based network operating system that provides software-based
-network routing, firewall, and VPN functionality.
-
-The VyOS project was started in late 2013 as a community fork of the
-`GPL <https://en.wikipedia.org/wiki/GNU_General_Public_License>`_ portions of
-Vyatta Core 6.6R1 with the goal of maintaining a free and open source network
-operating system in response to the decision to discontinue the community
-edition of Vyatta. Here everyone loves learning, older managers and new users.
-
-VyOS is primarily based on `Debian GNU/Linux <https://www.debian.org/>`_ and
-the `Quagga <http://www.nongnu.org/quagga/>`_ routing engine. Its configuration
-syntax and :ref:`cli` are loosely derived from Juniper JUNOS as modelled by the
-`XORP project <http://www.xorp.org/>`_, which was the original routing engine
-for Vyatta.
-
-In the 4.0 release of Vyatta, the routing engine was changed to Quagga. As of
-VyOS version 1.2, VyOS now uses `FRRouting <https://frrouting.org/>`_ as the
-routing engine.
-
-How is VyOS different from any other router distributions and platform?
-
-- It's more than just a firewall and VPN, VyOS includes extended routing
- capabilities like OSPFv2, OSPFv3, BGP, VRRP, and extensive route policy
- mapping and filtering
-- Unified command line interface in the style of hardware routers.
-- Scriptable CLI
-- Stateful configuration system: prepare changes and commit at once or discard,
- view previous revisions or rollback to them, archive revisions to remote
- server and execute hooks at commit time
-- Image-based upgrade: keep multiple versions on the same system and revert to
- previous image if a problem arises
-- Multiple VPN capabilities: OpenVPN, IPSec, Wireguard, DPMVPN, IKEv2 and more
-- DHCP, TFTP, mDNS repeater, broadcast relay and DNS forwarding support
-- Both IPv4 and IPv6 support
-- Runs on physical and virtual platforms alike: small x86 boards, big servers,
- KVM, Xen, VMware, Hyper-V, and more
-- Completely free and open source, with documented internal APIs and build
- procedures
-- Community driven. Patches are welcome and all code, bugs, and nightly builds
- are publicly accessible
+In the beginning...
+===================
+There once was a network operating system based on Debian GNU/Linux,
+called Vyatta. [*]_ 2006 onwards, it was a great free software
+alternative to Cisco IOS and Jupiter JUNOS. It came in two editions:
+Vyatta Core (previously Vyatta Community Edition) that was completely
+free software, and Vyatta Subscription Edition that had proprietary
+features and was only available to paying customers. [*]_
+
+Vyatta was acquired by Brocade Communication Systems in 2012. Shortly
+after, Brocade renamed Vyatta Subscription Edition to Brocade vRouter,
+discontinued Vyatta Core and shut down the community forum without a
+notice. The bug tracker and Git repositories followed next year.
+
+It's worth noting that by the time Brocade acquired Vyatta,
+development of Vyatta Core was already stagnated. Vyatta Subscription
+Edition (and thus, Vyatta development as a whole) had been replacing
+core components with proprietary software, meaning few features made
+it to Vyatta Core, and those that did were bug-ridden and hamstrung.
+
+In 2013, soon after Vyatta Core was abandoned, the community forked
+the last Vyatta Core version (6.6R1) and VyOS Project came into being.
+`Sentrium SL <https://blog.vyos.io/sentrium-what-sentrium>`_ was
+established by VyOS maintainers in 2014 to fund VyOS development by
+selling support, consulting services and prebuilt long-term support
+images.
+
+Brocade was acquired by Broadcom in 2016 and sold what remains of
+erstwhile Vyatta to AT&T in 2017, who in turn sold it to Ciena in 2021.
+
+
+Major releases
+==============
+
+VyOS major versions used to be named after elements in order of atomic
+numbers. With 1.2, this naming scheme was replaced with the much
+cooler scheme of Latin names of IAU designated constellations by solid
+angle area, starting from the smallest.
+
+Hydrogen (1.0)
+--------------
+
+Released just in time for holidays on 22 December 2013, Hydrogen was
+the first major VyOS release. It fixed features that were broken in
+Vyatta Core 6.6 (such as IPv4 BGP peer groups and DHCPv6 relay) and
+introduced command scripting, a task scheduler and web proxy LDAP
+authentication.
+
+Helium (1.1)
+------------
+
+Helium was released on 9 October 2014, exactly on the day VyOS Project
+first came into being in the previous year. Helium came with a lot of
+new features, including an event handler and support for L2TPv3,
+802.1ad QinQ and IGMP proxy, as well as experimental support for VXLAN
+and DMVPN (the latter of which was also broken in Vyatta Core due to
+its reliance on a proprietary NHRP implementation).
+
+Crux (1.2)
+----------
+
+Crux (the Southern Cross) came out on 28 January 2019 and was the
+first major release of VyOS as we know it today. The underlying
+Debian base was upgraded from Squeeze (6) to Jessie (8).
+
+Although Crux came with too many new features to mention here, some
+noteworthy ones are: an mDNS repeater, a broadcast relay,
+a high-performance PPPoE server, an HFSC scheduler, as well as support
+for Wireguard, unicast VRRP, RPKI for BGP and fully 802.1ad-compliant
+QinQ ethertype. The telnet server and support for P2P filtering were
+removed.
+
+Crux is the first version to feature the modular image build system.
+CLI definitions began to be written in the modern, verifiable XML
+templates. Python APIs were introduced for command scripting and
+configuration migration. Introduction of new Perl and shell code was
+proscribed and the rewriting of legacy Perl code in pure Python began
+with Crux.
+
+As of 2022, Crux is still supported and maintained.
+
+Equuleus (1.3)
+--------------
+
+The current long-term support version of VyOS, Equuleus (the Pony)
+came out on 21 December 2021, once again in time for the winter
+holidays.
+
+Equuleus brought many long-desired features with it, most notably
+an SSTP VPN server, an IPoE server, an OpenConnect VPN server and
+a serial console server, in addition to reworked support for WWAN
+interfaces, support for GENEVE and MACSec interfaces, VRF, IS-IS
+routing, preliminary support for MPLS and LDP, and many other
+initialisms.
+
+As of 2022, Equuleus is in the stable.
+
+Sagitta (1.4)
+-------------
+
+Sagitta (the Arrow) is the codename of the current development
+branch, so there's no VyOS 1.4 yet.
+
+A note on copyright
+===================
+
+Unlike Vyatta, VyOS never had (nor will ever have) proprietary code.
+The only proprietary material in VyOS is non-code assets, such as
+graphics and the trademark "VyOS". [*]_ This means you can build your
+own long-term support images (as the entire toolchain we use is free
+software) and even distribute them, given you rename it and remove
+such assets before building. Although note that we do not provide
+support for images distributed by a third-party. See the
+`artwork license <https://github.com/vyos/vyos-build/blob/current/LICENSE.artwork>`_
+and the end-user license agreement at ``/usr/share/doc/vyos/EULA`` in
+any pre-built image for more precise information.
+
+
+.. [*] From the Sanskrit adjective "Vyātta" (व्यात्त), meaning opened.
+.. [*] A business model comparable to that of Redis, rather than that
+ of VyOS today.
+.. [*] This is not unlike how Linus Torvalds owns the trademark "Linux".