diff --git a/plays/firewall.yml b/plays/firewall.yml
index 7f489e63f1a9195c2304103ceb06354c61ac7b88..37f9c3966d23134fca6bdf0cb6a72767ce4ac140 100755
--- a/plays/firewall.yml
+++ b/plays/firewall.yml
@@ -14,3 +14,20 @@
       service_password: "{{ vault_re2o_service_password }}"
   roles:
     - firewall
+
+# Deploy BGP server configuration on IPv4 routers
+- hosts: crans_routeurs
+  vars:
+    zebra:
+      password: "{{ vault_zebra_password }}"
+    bgp:
+      as: 204515
+      router_id_v4: 158.255.113.73
+      network_v4: 185.230.76.0/22
+      neighbor_v4: 158.255.113.72
+      router_id_v6: 138.231.136.200
+      network_v6: 2a0c:700::/32
+      neighbor_v6: 2001:1b48:2:103::bb:1
+      remote_as: 8218
+  roles:
+    - quagga
diff --git a/roles/quagga-ipv4/tasks/main.yml b/roles/quagga-ipv4/tasks/main.yml
deleted file mode 100644
index 1da2c63bb5ec2669790d205505d5c2ccb3ed8b4f..0000000000000000000000000000000000000000
--- a/roles/quagga-ipv4/tasks/main.yml
+++ /dev/null
@@ -1,16 +0,0 @@
----
-- name: Deploy quagga bgpd configuration
-  template:
-    src: quagga/bgpd.conf.j2
-    dest: /etc/quagga/bgpd.conf
-    mode: 0640
-    owner: quagga
-    group: quagga
-
-- name: Deploy quagga zabra configuration
-  template:
-    src: quagga/zebra.conf.j2
-    dest: /etc/quagga/zebra.conf
-    mode: 0640
-    owner: quagga
-    group: quagga
diff --git a/roles/quagga-ipv4/templates/quagga/bgpd.conf.j2 b/roles/quagga-ipv4/templates/quagga/bgpd.conf.j2
deleted file mode 100644
index d87269e32305dc1e4d30c8d5957d242fe1358cbe..0000000000000000000000000000000000000000
--- a/roles/quagga-ipv4/templates/quagga/bgpd.conf.j2
+++ /dev/null
@@ -1,11 +0,0 @@
-{{ ansible_header | comment(decoration='! ') }}
-
-router bgp {{ bgp.as }}
-no synchronization
-bgp router-id {{ bgp.router_id }}
-network {{ bgp.network }}
-neighbor {{ bgp.neighbor }} remote-as {{ bgp.remote_as }}
-
-!
-log file /var/log/quagga/bgpd.log
-log stdout
diff --git a/roles/quagga-ipv6/tasks/main.yml b/roles/quagga-ipv6/tasks/main.yml
deleted file mode 100644
index 1da2c63bb5ec2669790d205505d5c2ccb3ed8b4f..0000000000000000000000000000000000000000
--- a/roles/quagga-ipv6/tasks/main.yml
+++ /dev/null
@@ -1,16 +0,0 @@
----
-- name: Deploy quagga bgpd configuration
-  template:
-    src: quagga/bgpd.conf.j2
-    dest: /etc/quagga/bgpd.conf
-    mode: 0640
-    owner: quagga
-    group: quagga
-
-- name: Deploy quagga zabra configuration
-  template:
-    src: quagga/zebra.conf.j2
-    dest: /etc/quagga/zebra.conf
-    mode: 0640
-    owner: quagga
-    group: quagga
diff --git a/roles/quagga-ipv6/templates/quagga/bgpd.conf.j2 b/roles/quagga-ipv6/templates/quagga/bgpd.conf.j2
deleted file mode 100644
index 5021cade039ea3815602746321a4b4f2cf619bde..0000000000000000000000000000000000000000
--- a/roles/quagga-ipv6/templates/quagga/bgpd.conf.j2
+++ /dev/null
@@ -1,13 +0,0 @@
-{{ ansible_header | comment(decoration='! ') }}
-
-router bgp {{ bgp.as }}
-no synchronization
-bgp router-id {{ bgp.router_id }}
-neighbor {{ bgp.neighbor }} remote-as {{ bgp.remote_as }}
-address-family ipv6
-network {{ bgp.network }}
-neighbor {{ bgp.neighbor }} activate
-exit-address-family
-!
-log file /var/log/quagga/bgpd.log
-log stdout
diff --git a/roles/quagga-ipv6/templates/quagga/zebra.conf.j2 b/roles/quagga-ipv6/templates/quagga/zebra.conf.j2
deleted file mode 100644
index 1db5e12d97cdf50afb87d83c4c71d3dddb2a2fb8..0000000000000000000000000000000000000000
--- a/roles/quagga-ipv6/templates/quagga/zebra.conf.j2
+++ /dev/null
@@ -1,10 +0,0 @@
-{{ ansible_header | comment(decoration='! ') }}
-
-hostname zebra
-password {{ zebra.password }}
-enable password {{ zebra.password }}
-log file /var/log/quagga/zebra.log
-
-
-interface lo
-line vty
diff --git a/roles/quagga/tasks/main.yml b/roles/quagga/tasks/main.yml
index 054401f1cbeb46269d8aa8de90d648b892d621db..42fff5d4c184d35a77d6c846e9a658dc8f380af6 100644
--- a/roles/quagga/tasks/main.yml
+++ b/roles/quagga/tasks/main.yml
@@ -8,6 +8,14 @@
   retries: 3
   until: apt_result is succeeded
 
+- name: Create quagga log directory
+  file:
+    path: /var/log/quagga
+    state: directory
+    mode: 0755
+    owner: quagga
+    group: quagga
+
 - name: Deploy quagga daemons configuration
   template:
     src: quagga/daemons.j2
@@ -24,10 +32,18 @@
     owner: quagga
     group: quagga
 
-- name: Create quagga log directory
-  file:
-    path: /var/log/quagga
-    state: directory
-    mode: 0755
+- name: Deploy quagga bgpd configuration
+  template:
+    src: quagga/bgpd.conf.j2
+    dest: /etc/quagga/bgpd.conf
+    mode: 0640
+    owner: quagga
+    group: quagga
+
+- name: Deploy quagga zabra configuration
+  template:
+    src: quagga/zebra.conf.j2
+    dest: /etc/quagga/zebra.conf
+    mode: 0640
     owner: quagga
     group: quagga
diff --git a/roles/quagga/templates/quagga/bgpd.conf.j2 b/roles/quagga/templates/quagga/bgpd.conf.j2
new file mode 100644
index 0000000000000000000000000000000000000000..cde7878b167b8087f3292a115c842310b1529556
--- /dev/null
+++ b/roles/quagga/templates/quagga/bgpd.conf.j2
@@ -0,0 +1,16 @@
+{{ ansible_header | comment(decoration='! ') }}
+!
+router bgp {{ bgp.as }}
+ no synchronization
+ bgp router-id {{ bgp.router_id_v4 }}
+ network {{ bgp.network_v4 }}
+ neighbor {{ bgp.neighbor_v4 }} remote-as {{ bgp.remote_as }}
+!
+router bgp {{ bgp.as }}
+ no synchronization
+ bgp router-id {{ bgp.router_id_v6 }}
+ network {{ bgp.network_v6 }}
+ neighbor {{ bgp.neighbor_v6 }} remote-as {{ bgp.remote_as }}
+!
+log file /var/log/quagga/bgpd.log
+log stdout
diff --git a/roles/quagga-ipv4/templates/quagga/zebra.conf.j2 b/roles/quagga/templates/quagga/zebra.conf.j2
similarity index 100%
rename from roles/quagga-ipv4/templates/quagga/zebra.conf.j2
rename to roles/quagga/templates/quagga/zebra.conf.j2