diff --git a/ansible/roles/octavia/tasks/hm-interface.yml b/ansible/roles/octavia/tasks/hm-interface.yml
index 2ce5170fa8f354d9d7da71668bc60dc0a664c796..9cbc8f188f90cf611efd35bd8c2674ac8194eed0 100644
--- a/ansible/roles/octavia/tasks/hm-interface.yml
+++ b/ansible/roles/octavia/tasks/hm-interface.yml
@@ -67,11 +67,12 @@
     dest: /etc/systemd/system/octavia-interface.service
   register: octavia_interface
 
-- name: Reload octavia-interface.service if required
+- name: Restart octavia-interface.service if required
   become: True
   systemd:
     name: octavia-interface
     daemon_reload: yes
+    state: restarted
   when: octavia_interface.changed
 
 - name: Enable and start octavia-interface.service
diff --git a/ansible/roles/octavia/templates/octavia-interface.service.j2 b/ansible/roles/octavia/templates/octavia-interface.service.j2
index 8a380918386501c21cc4966d49848ff93f95b021..7f04d9fb428c95f71d12098ba85974a6d2fb3f9f 100644
--- a/ansible/roles/octavia/templates/octavia-interface.service.j2
+++ b/ansible/roles/octavia/templates/octavia-interface.service.j2
@@ -5,10 +5,12 @@ After=docker.service
 
 [Service]
 Type=oneshot
+User=root
+Group=root
 RemainAfterExit=true
-ExecStartPre=/usr/bin/sudo /sbin/ip link set dev {{ octavia_network_interface }} address {{ port_info.port.mac_address }}
-ExecStart=/usr/bin/sudo /sbin/dhclient -v {{ octavia_network_interface }} -cf /etc/dhcp/octavia-dhclient.conf
-ExecStop=/usr/bin/sudo /sbin/dhclient -r {{ octavia_network_interface }}
+ExecStartPre=/sbin/ip link set dev {{ octavia_network_interface }} address {{ port_info.port.mac_address }}
+ExecStart=/sbin/dhclient -v {{ octavia_network_interface }} -cf /etc/dhcp/octavia-dhclient.conf
+ExecStop=/sbin/dhclient -r {{ octavia_network_interface }}
 
 [Install]
 WantedBy=multi-user.target