| Age | Commit message (Collapse) | Author | 
|---|
|  | T6068: dhcp-server: add command <set service dhcp-server high-availability mode> | 
|  | mode> so user can define what type of ha use: active-active or active-passive | 
|  | interface with vrf | 
|  | dhcp-server high-availability>. | 
|  | for leases | 
|  |  | 
|  |  | 
|  | the lease file (#2796) | 
|  |  | 
|  | supported by Kea | 
|  |  | 
|  | Also, have the smoketest start with a clean CLI instance. | 
|  |  | 
|  |  | 
|  | * T5195: move run, cmd, call, rc_cmd helper to vyos.utils.process
* T5195: use read_file and write_file implementation from vyos.utils.file
Changed code automatically using:
find . -type f -not -path '*/\.*' -exec sed -i 's/^from vyos.util import read_file$/from vyos.utils.file import read_file/g' {} +
find . -type f -not -path '*/\.*' -exec sed -i 's/^from vyos.util import write_file$/from vyos.utils.file import write_file/g' {} +
* T5195: move chmod* helpers to vyos.utils.permission
* T5195: use colon_separated_to_dict from vyos.utils.dict
* T5195: move is_systemd_service_* to vyos.utils.process
* T5195: fix boot issues with missing imports
* T5195: move dict_search_* helpers to vyos.utils.dict
* T5195: move network helpers to vyos.utils.network
* T5195: move commit_* helpers to vyos.utils.commit
* T5195: move user I/O helpers to vyos.utils.io | 
|  | Commit cca7ec3e ("T4832: dhcp: Add IPv6-only dhcp option support (RFC 8925)")
extended the smoketests but used int over str when calilng the CLI wrapper.
This led to:
TypeError: sequence item 7: expected str instance, int found | 
|  | Clients supporting this DHCP option (DHCP option 108, RFC 8925) will
disable its IPv4 network stack for configured number of seconds
and operate in IPv6-only mode.
This option is known to work on iOS 15+ and macOS 12.0.1+.
Example command:
```sh
set service dhcp-server shared-network-name LAN6 subnet 192.168.64.0/24 ipv6-only-preferred 0
``` | 
|  |  | 
|  | Commit 5fc9ef9e ("DHCP : T4258: Set correct port for dhcp-failover") changed
how the failover port is rendered into the ISC DHCPd configuration - adjustment
of the smoketests was missed out. | 
|  |  | 
|  |  | 
|  |  | 
|  | IPv4 DHCP uses "dns-server" to specify one or more name-servers for a given
pool. In order to use the same CLI syntax this should be renamed to name-server,
which is already the case for DHCPv6. | 
|  | vyos@vyos# show service dhcp-server
 shared-network-name LAN {
     subnet 10.0.0.0/24 {
         default-router 10.0.0.1
         dns-server 194.145.150.1
         lease 88
         range 0 {
             start 10.0.0.100
             stop 10.0.0.200
         }
         static-route 192.168.10.0/24 {
             next-hop 10.0.0.2
         }
         static-route 192.168.20.0/24 {
             router 10.0.0.2
         }
     }
 } | 
|  | As we do not allow any invalid raw options passed into ISC dhcpd we should also
verify this behavior with a smoketest. | 
|  | Currently every smoketest does the setup and destruction of the configsession
on its own durin setUp(). This creates a lot of overhead and one configsession
should be re-used during execution of every smoketest script.
In addiion a test that failed will leaf the system in an unconsistent state.
For this reason before the test is executed we will save the running config
to /tmp and the will re-load the config after the test has passed, always
ensuring a clean environment for the next test. | 
|  |  | 
|  |  | 
|  | A reference to a dictionary key obtained by a for loop can not be used to update
values inside that dictionaries key. You must use the original path to the
nested dictionaries key. | 
|  |  | 
|  |  | 
|  | While rewriting the code to get_config_dict() in commit 84b7ade286 ("dhcp: T3100:
migrate server configuration to get_config_dict()") a regression was added not
properly joining strings when multiple search-somains had been given.
Wrong: domain-search "domain1, domain2";
Correct: domain-search "domain1", "domain2"; | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  |