<feed xmlns='http://www.w3.org/2005/Atom'>
<title>vyos-1x.git/src/etc/dhcp/dhclient-enter-hooks.d, branch rolling</title>
<subtitle>VyOS command definitions, scripts, and utilities (mirror of https://github.com/vyos/vyos-1x.git)
</subtitle>
<id>https://git.amelek.net/vyos/vyos-1x.git/atom?h=rolling</id>
<link rel='self' href='https://git.amelek.net/vyos/vyos-1x.git/atom?h=rolling'/>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/'/>
<updated>2026-03-27T15:00:17+00:00</updated>
<entry>
<title>T8410: Fix typos and mistakes for comments and messages</title>
<updated>2026-03-27T15:00:17+00:00</updated>
<author>
<name>Viacheslav Hletenko</name>
<email>v.gletenko@vyos.io</email>
</author>
<published>2026-03-27T14:43:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=139b0841f8242a5c6ebdafb37380c1fb78342aae'/>
<id>urn:sha1:139b0841f8242a5c6ebdafb37380c1fb78342aae</id>
<content type='text'>
Fix typos and mistakes
No functional changes
</content>
</entry>
<entry>
<title>T8188: Preserve static IPv4 addresses flushed by dhclient</title>
<updated>2026-03-19T16:07:08+00:00</updated>
<author>
<name>Nataliia Solomko</name>
<email>natalirs1985@gmail.com</email>
</author>
<published>2026-02-04T12:55:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=2a6a63391173e8cef9354a696e188e90f43def74'/>
<id>urn:sha1:2a6a63391173e8cef9354a696e188e90f43def74</id>
<content type='text'>
When dhclient renews/rebinds a lease, it calls "ip -4 addr flush dev
&lt;interface&gt;". This removes ALL IPv4 addresses, including static
addresses configured via VyOS (e.g., "set interfaces ethernet eth0
address 192.168.1.1/24").
The updated hook logic now intercepts the "ip -4 addr flush" command and replaces
it with a selective flush that only removes addresses marked as
"dynamic" by the kernel. DHCP-assigned addresses have the "dynamic" flag
set automatically.
</content>
</entry>
<entry>
<title>T5811: Make static dhcp-interface routes robust</title>
<updated>2025-10-21T16:57:40+00:00</updated>
<author>
<name>Kyrylo Yatsenko</name>
<email>hedrok@gmail.com</email>
</author>
<published>2025-10-17T10:58:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=c4632bb6ad6c055fb7fe5a5c055354c6895ba8e5'/>
<id>urn:sha1:c4632bb6ad6c055fb7fe5a5c055354c6895ba8e5</id>
<content type='text'>
Solves the problem that vyos-configs in FRRender caches configuation and
DHCP changes are ignored.

* Add src/helpers/vyos-request-configd-update.py that requests vyos-configd
  to update FRR configuration.
* Make dhclient hooks use it instead of calling protocols_static.py
* Make FRRender cache not only configuration but also DHCP gateways so
  that is any of them changes, FRR configuration is updated
</content>
</entry>
<entry>
<title>T3680: protocols: add dhclient hooks for dhcp-interface static routes</title>
<updated>2025-10-21T16:57:40+00:00</updated>
<author>
<name>Matthew Kobayashi</name>
<email>matthew@kobayashi.au</email>
</author>
<published>2025-10-02T03:15:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=70b7818f75f55de14214b85a12b8ec13d98ff89b'/>
<id>urn:sha1:70b7818f75f55de14214b85a12b8ec13d98ff89b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>T7941: fix DHCP client running in VRF with non-word characters</title>
<updated>2025-10-18T11:19:10+00:00</updated>
<author>
<name>Christian Breunig</name>
<email>christian@breunig.cc</email>
</author>
<published>2025-10-18T11:14:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=6a5cd3b87b2dee397ddb4a72dffd25e4e24122f1'/>
<id>urn:sha1:6a5cd3b87b2dee397ddb4a72dffd25e4e24122f1</id>
<content type='text'>
The previous implementation used awk with a regex to extract the VRF name from
JSON data, relying on "(\w+)" to match the value. This broke for valid VRF
names containing hyphens or other non-word characters.

This update replaces the regex-based extraction with a jq query that reliably
parses the JSON structure, ensuring correct behavior regardless of VRF name
format. This also reduces parsing fragility by using a tool purpose-built for
JSON processing.
</content>
</entry>
<entry>
<title>dhclient: T6253: Respect `no-default-route`</title>
<updated>2025-04-22T02:20:30+00:00</updated>
<author>
<name>Matthew Kobayashi</name>
<email>matthew@kobayashi.au</email>
</author>
<published>2025-04-22T02:06:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=2ff0981bfe1231fc430507b4b5f8031c05005db1'/>
<id>urn:sha1:2ff0981bfe1231fc430507b4b5f8031c05005db1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>dhclient: T6667: Added workaround for communication with FRR</title>
<updated>2024-08-24T08:06:39+00:00</updated>
<author>
<name>zsdc</name>
<email>taras@vyos.io</email>
</author>
<published>2024-08-21T18:55:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=da64a7246e9b12d5bd84287517cfbfa59e364c28'/>
<id>urn:sha1:da64a7246e9b12d5bd84287517cfbfa59e364c28</id>
<content type='text'>
To increase the chance for dhclient to configure routes in FRR, added a
workaround. Now 10 attempts are performed with 1 second delay and only after
this dhclient gives up.
</content>
</entry>
<entry>
<title>dhcpv6-client: T2590: fix vyos-hostsd update for nameserver and search domains</title>
<updated>2024-04-01T12:04:50+00:00</updated>
<author>
<name>Christian Breunig</name>
<email>christian@breunig.cc</email>
</author>
<published>2024-04-01T12:04:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=ece425f0191762638b7c967097accd8739e9103d'/>
<id>urn:sha1:ece425f0191762638b7c967097accd8739e9103d</id>
<content type='text'>
After migrating from ISC DHCLIENT for IPv6 to wide-dhcp-client the logic which
was present to update /etc/resolv.conf with the DHCP specified nameservers and
also the search domain list was no longer present.

This commit adds a per interface rendered script to inform vyos-hostsd about
the received IPv6 nameservers and search domains.
</content>
</entry>
<entry>
<title>dhclient: T5724: run user hooks using run_hookdir</title>
<updated>2023-11-11T10:00:34+00:00</updated>
<author>
<name>gavol</name>
<email>34028214+gavol@users.noreply.github.com</email>
</author>
<published>2023-11-11T10:00:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=645a0e768e27912a3f46d00de31d0fc79b6fd463'/>
<id>urn:sha1:645a0e768e27912a3f46d00de31d0fc79b6fd463</id>
<content type='text'>
User hooks are executed using run_hookdir (defined in the /sbin/dhclient-script script) instead of run-parts. That allows user hooks to modify variables set by the dhcp client (e.g., the new_routers variable to avoid the installation of the default routes).</content>
</entry>
<entry>
<title>T4997: add dhcp client user hooks</title>
<updated>2023-02-26T20:05:56+00:00</updated>
<author>
<name>bri</name>
<email>284789+b-@users.noreply.github.com</email>
</author>
<published>2023-02-26T20:05:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.amelek.net/vyos/vyos-1x.git/commit/?id=40e0cb294e0377fdfe11171b35d78bd27e231df2'/>
<id>urn:sha1:40e0cb294e0377fdfe11171b35d78bd27e231df2</id>
<content type='text'>
This commit adds a script to run user-defined hook scripts upon renewing
a DHCP lease. This can be used to, for example, dynamically define a
firewall address-group based on the dynamic IP address of an interface.

For an example of its use (as well as the use case I had in mind while
coding this), see https://vyos.dev/T2196#142394

Co-authored-by: br &lt;git@ibeep.com&gt;</content>
</entry>
</feed>
