diff --git a/networkd/tasks/main.yml b/networkd/tasks/main.yml
index 173578c3b9ae70fed2e010e7d851b6a1d28757c4..afaab46f9a54563cc101066f435a5ae1942eb210 100644
--- a/networkd/tasks/main.yml
+++ b/networkd/tasks/main.yml
@@ -21,6 +21,20 @@
   notify:
     - restart networkd
 
+- name: find network config files generated by the bootstrap process
+  find:
+    path: /etc/systemd/network
+    pattern: bootstrap-*.network
+  register: bootstrap_network_files
+
+- name: delete network config files generated by the bootstrap process
+  file:
+    path: "{{item.path}}"
+    state: absent
+  loop: "{{bootstrap_network_files.files}}"
+  notify:
+    - restart networkd
+
 - name: ensure bonding works correctly
   include_tasks: bond.yml
   loop: "{{ networkd|default([{'type': networkd_type}])|flatten(levels=1) }}"