summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/_static/images/dhcp-relay-through-gre-bridge.pngbin0 -> 31261 bytes
-rw-r--r--docs/appendix/examples/dhcp-relay-through-gre-bridge.rst77
-rw-r--r--docs/appendix/examples/index.rst1
-rw-r--r--docs/contributing/build-vyos.rst24
-rw-r--r--docs/image-mgmt.rst64
-rw-r--r--docs/services/dhcp.rst16
6 files changed, 156 insertions, 26 deletions
diff --git a/docs/_static/images/dhcp-relay-through-gre-bridge.png b/docs/_static/images/dhcp-relay-through-gre-bridge.png
new file mode 100644
index 00000000..1f3e7744
--- /dev/null
+++ b/docs/_static/images/dhcp-relay-through-gre-bridge.png
Binary files differ
diff --git a/docs/appendix/examples/dhcp-relay-through-gre-bridge.rst b/docs/appendix/examples/dhcp-relay-through-gre-bridge.rst
new file mode 100644
index 00000000..f94eb67f
--- /dev/null
+++ b/docs/appendix/examples/dhcp-relay-through-gre-bridge.rst
@@ -0,0 +1,77 @@
+.. _examples-dhcp-relay-through-gre-bridge:
+
+
+DHCP Relay through GRE-Bridge
+-----------------------------
+
+Diagram
+^^^^^^^
+
+.. image:: /_static/images/dhcp-relay-through-gre-bridge.png
+ :width: 80%
+ :align: center
+ :alt: Network Topology Diagram
+
+Configuration
+^^^^^^^^^^^^^
+
+DHCP Server
+"""""""""""
+
+.. code-block:: none
+
+ set interfaces ethernet eth0 address '10.0.2.1/24'
+ set interfaces loopback lo address '3.3.3.3/24'
+ set interfaces tunnel tun100 address '172.16.0.2/30'
+ set interfaces tunnel tun100 encapsulation 'gre-bridge'
+ set interfaces tunnel tun100 local-ip '10.0.2.1'
+ set interfaces tunnel tun100 remote-ip '192.168.0.1'
+ set protocols ospf area 0 network '3.3.3.0/24'
+ set protocols ospf area 0 network '10.0.2.0/24'
+ set protocols ospf parameters router-id '3.3.3.3'
+ set protocols static interface-route 10.0.1.2/32 next-hop-interface tun100
+ set service dhcp-server shared-network-name asdf authoritative
+ set service dhcp-server shared-network-name asdf subnet 3.3.3.0/24 range 0 start '3.3.3.30'
+ set service dhcp-server shared-network-name asdf subnet 3.3.3.0/24 range 0 stop '3.3.3.40'
+ set service dhcp-server shared-network-name asdf subnet 10.0.1.0/24 default-router '10.0.1.2'
+ set service dhcp-server shared-network-name asdf subnet 10.0.1.0/24 range 0 start '10.0.1.200'
+ set service dhcp-server shared-network-name asdf subnet 10.0.1.0/24 range 0 stop '10.0.1.210'
+ set service dhcp-server shared-network-name asdf subnet 10.2.1.0/24 range 0 start '10.2.1.222'
+ set service dhcp-server shared-network-name asdf subnet 10.2.1.0/24 range 0 stop '10.2.1.233'
+ set service dhcp-server shared-network-name asdf subnet 172.16.0.0/30 range 0 start '172.16.0.1'
+ set service dhcp-server shared-network-name asdf subnet 172.16.0.0/30 range 0 stop '172.16.0.2'
+
+
+In-Between Router
+"""""""""""""""""
+
+.. code-block:: none
+
+ set interfaces ethernet eth0 address '192.168.0.2/24'
+ set interfaces ethernet eth1 address '10.0.2.2/24'
+ set protocols ospf area 0 network '192.168.0.0/24'
+ set protocols ospf area 0 network '10.0.2.0/24'
+ set protocols ospf parameters router-id '192.168.0.2'
+
+
+DHCP Relay
+""""""""""
+
+.. code-block:: none
+
+ set interfaces ethernet eth0 address '10.0.1.2/24'
+ set interfaces ethernet eth1 address '192.168.0.1/24'
+ set interfaces loopback lo address '1.1.1.1'
+ set interfaces tunnel tun100 address '172.16.0.1/30'
+ set interfaces tunnel tun100 encapsulation 'gre-bridge'
+ set interfaces tunnel tun100 local-ip '192.168.0.1'
+ set interfaces tunnel tun100 remote-ip '10.0.2.1'
+ set protocols ospf area 0 network '10.0.1.0/24'
+ set protocols ospf area 0 network '192.168.0.0/24'
+ set protocols ospf area 0 network '1.1.1.0/24'
+ set protocols ospf parameters router-id '1.1.1.1'
+ set protocols static interface-route 3.3.3.3/32 next-hop-interface tun100
+ set service dhcp-relay interface 'eth0'
+ set service dhcp-relay interface 'tun100'
+ set service dhcp-relay server '3.3.3.3'
+
diff --git a/docs/appendix/examples/index.rst b/docs/appendix/examples/index.rst
index b9d2abeb..427606de 100644
--- a/docs/appendix/examples/index.rst
+++ b/docs/appendix/examples/index.rst
@@ -10,6 +10,7 @@ This chapter contains various configuration Examples
:maxdepth: 2
dmvpn
+ dhcp-relay-through-gre-bridge
zone-policy
bgp-ipv6-unnumbered
ospf-unnumbered
diff --git a/docs/contributing/build-vyos.rst b/docs/contributing/build-vyos.rst
index 5c7f5205..302f828c 100644
--- a/docs/contributing/build-vyos.rst
+++ b/docs/contributing/build-vyos.rst
@@ -48,7 +48,14 @@ will ensure that the container is always up-to-date. A rebuild is triggered once
the container changes (please note this will take 2-3 hours after pushing to
the vyos-build repository).
-The container can always be built directly from source:
+To download the container from DockerHub run:
+
+.. code-block:: none
+
+ $ docker pull vyos/vyos-build:crux # for the LTS version
+ $ docker pull vyos/vyos-build:current # for the current version
+
+The container can also be built directly from source:
.. code-block:: none
@@ -69,16 +76,29 @@ Build ISO
---------
After the container is generated either manually or fetched from DockerHub,
-a fresh build of the VyOS ISO can begin.
+a fresh build of the VyOS ISO can begin.
+
+If you pulled the image from DockerHub, you need to clone the repository to
+your local machine:
+
+.. code-block:: none
+
+ $ git clone -b current --single-branch https://github.com/vyos/vyos-build
+
+After cloning, change directory to the ``vyos-build`` directory and run:
.. code-block:: none
+ $ cd vyos-build
$ docker run --rm -it --privileged -v $(pwd):/vyos -w /vyos vyos/vyos-build bash
vyos_bld@d4220bb519a0:/vyos# ./configure --architecture amd64 \
--build-by "your@email.tld" \
--build-type release --version 1.2.0
vyos_bld@d4220bb519a0:/vyos# sudo make iso
+When the build is successful, the resulting iso can be found inside the ``build``
+directory.
+
.. note:: Attempting to use the docker build image on MacOS or Windows will fail
as docker does not expose all the filesystem feature required to the container.
Building within a VirtualBox server on Mac or Windows is however possible.
diff --git a/docs/image-mgmt.rst b/docs/image-mgmt.rst
index 9b2da077..2c92f7b4 100644
--- a/docs/image-mgmt.rst
+++ b/docs/image-mgmt.rst
@@ -101,25 +101,46 @@ configured to be the default (:opcmd:`set system image default-boot`).
Update VyOS
===========
-Finally, new system images can be added using the :opcmd:`add system image`
-command. The add image command will extract the image from the release ISO
-(either on the local filesystem or remotely if a URL is provided). The image
-install process will prompt you to use the current system configuration and SSH
-security keys, allowing for the new image to boot using the current
-configuration.
+New system images can be added using the :opcmd:`add system image`
+command. The command will extract the chosen image and will prompt you
+to use the current system configuration and SSH security keys, allowing
+for the new image to boot using the current configuration.
+
+.. note:: Only LTS releases are PGP-signed.
.. opcmd:: add system image <url | path>
- New system images can be either installed from an URL (http://, https://) or
- any location pointed to by a file path, e.g. /tmp/vyos-1.2.3-amd64.iso.
- If there is not enough free diskspace available installation will be
- canceled. To delete images use the :opcmd:`delete system image` command.
+ Use this command to install a new system image. You can reach the
+ image from the web (http://, https://) or from your local system,
+ e.g. /tmp/vyos-1.2.3-amd64.iso.
- .. hint:: | The most up-do-date Rolling Release for AMD64 can be accessed using the following URL:
- | https://downloads.vyos.io/rolling/current/amd64/vyos-rolling-latest.iso
+If there is not enough **free disk space available**, the installation
+will be canceled. To delete images use the :opcmd:`delete system image`
+command.
+VyOS configuration is associated to each image, and **each image has a
+unique copy of its configuration**. This is different than a traditional
+network router where the configuration is shared across all images.
+
+.. note:: If you have any personal file, like some scripts you created,
+ and you don't want them to be deleted during the upgrade, make sure
+ those files are into the ``/configure`` directory.
+
+You can access files from a previous installation and copy them to your
+current image if they were located in the ``/config`` directory. This
+can be done using the :opcmd:`copy` command. So, for instance, in order
+to copy ``/config/config.boot`` from VyOS 1.2.1 image, you would use the
+following command:
+
+.. code::
+
+ copy file 1.2.1://config/config.boot to /tmp/config.boot.1.2.1
- .. code-block:: none
+
+Example
+"""""""
+
+.. code-block:: none
vyos@vyos:~$ add system image https://downloads.vyos.io/rolling/current/amd64/vyos-rolling-latest.iso
Trying to fetch ISO file from https://downloads.vyos.io/rolling/current/amd64/vyos-rolling-latest.iso
@@ -142,18 +163,13 @@ configuration.
OK. This image will be named: vyos-1.3-rolling-201912201452
- .. note:: Rolling releases are not GPG signed, only the real release build
- will have a proper GPG signature.
- .. note:: VyOS configuration is associated to each image, and each image has
- a unique copy of its configuration. This is different than a traditional
- network router where the configuration is shared across all images.
+.. hint:: | The most up-do-date Rolling Release for AMD64 can be accessed using the following URL:
+ | https://downloads.vyos.io/rolling/current/amd64/vyos-rolling-latest.iso
+
+After reboot you might want to verify the version you are running with
+the :opcmd:`show version` command.
+
- After reboot you might want to verify the version you are running with the
- :opcmd:`show version` command.
-.. hint:: You can always access files from a previous installation and copy
- them to your current image. This can be done using the :opcmd:`copy`
- command. To copy ``/config/config.boot`` from VyOS 1.2.1 image use ``copy
- file 1.2.1://config/config.boot to /tmp/config.boot.1.2.1``.
diff --git a/docs/services/dhcp.rst b/docs/services/dhcp.rst
index 2e8bb4b0..8655d177 100644
--- a/docs/services/dhcp.rst
+++ b/docs/services/dhcp.rst
@@ -489,6 +489,22 @@ Configuration Options
A SNTP server address can be specified for DHCPv6 clients.
+Prefix Delegation
+^^^^^^^^^^^^^^^^^
+
+To hand out individual prefixes to your clients the following configuration is
+used:
+
+
+.. cfgcmd:: set service dhcpv6-server shared-network-name <name> subnet <prefix> prefix-delegation start <address> prefix-length <length>
+
+ Hand out prefixes of size `<length>` to clients in subnet `<prefix>` when
+ they request for prefix delegation.
+
+.. cfgcmd:: set service dhcpv6-server shared-network-name <name> subnet <prefix> prefix-delegation start <address> stop <address>
+
+ Delegate prefixes from the range indicated by the start and stop qualifier.
+
Address pools
-------------