fixed backbone routing
							parent
							
								
									5fed801449
								
							
						
					
					
						commit
						0f8af08cd7
					
				@ -0,0 +1,18 @@
 | 
				
			|||||||
 | 
					[Unit]
 | 
				
			||||||
 | 
					Description=WireGuard Backbone for %I
 | 
				
			||||||
 | 
					After=network-online.target
 | 
				
			||||||
 | 
					Wants=network-online.target
 | 
				
			||||||
 | 
					Documentation=man:wg(8)
 | 
				
			||||||
 | 
					Documentation=https://www.wireguard.io/
 | 
				
			||||||
 | 
					Documentation=https://www.wireguard.io/quickstart/
 | 
				
			||||||
 | 
					Documentation=https://git.zx2c4.com/WireGuard/about/src/tools/wg-quick.8
 | 
				
			||||||
 | 
					Documentation=https://git.zx2c4.com/WireGuard/about/src/tools/wg.8
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[Service]
 | 
				
			||||||
 | 
					Type=oneshot
 | 
				
			||||||
 | 
					RemainAfterExit=yes
 | 
				
			||||||
 | 
					ExecStart=/etc/wireguard/upbb%i.sh
 | 
				
			||||||
 | 
					ExecStop=/etc/wireguard/downbb%i.sh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[Install]
 | 
				
			||||||
 | 
					WantedBy=multi-user.target
 | 
				
			||||||
@ -1,24 +1,34 @@
 | 
				
			|||||||
---
 | 
					---
 | 
				
			||||||
- name: create wireguard config for sites
 | 
					- name: create wireguard config for peers
 | 
				
			||||||
  template:
 | 
					  template:
 | 
				
			||||||
      src: wg.conf.j2
 | 
					      src: wg.conf.j2
 | 
				
			||||||
      dest: /etc/wireguard/wgbackbone.conf
 | 
					      dest: /etc/wireguard/wgbb{{ item.name }}.conf
 | 
				
			||||||
      mode: 0400
 | 
					      mode: 0400
 | 
				
			||||||
 | 
					  with_items: "{{ wireguard_bb_peers }}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- name: create wireguard up scripts for sites
 | 
					- name: create wireguard up scripts for peers
 | 
				
			||||||
  template:
 | 
					  template:
 | 
				
			||||||
      src: up.sh.j2
 | 
					      src: up.sh.j2
 | 
				
			||||||
      dest: /etc/wireguard/upbackbone.sh
 | 
					      dest: /etc/wireguard/upbb{{ item.name }}.sh
 | 
				
			||||||
      mode: 0744
 | 
					      mode: 0744
 | 
				
			||||||
 | 
					  with_items: "{{ wireguard_bb_peers }}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- name: create wireguard down scripts for sites
 | 
					- name: create wireguard down scripts for peers
 | 
				
			||||||
  template:
 | 
					  template:
 | 
				
			||||||
      src: down.sh.j2
 | 
					      src: down.sh.j2
 | 
				
			||||||
      dest: /etc/wireguard/downbackbone.sh
 | 
					      dest: /etc/wireguard/downbb{{ item.name }}.sh
 | 
				
			||||||
      mode: 0744
 | 
					      mode: 0744
 | 
				
			||||||
 | 
					  with_items: "{{ wireguard_bb_peers }}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					- name: create wireguard backbone service template
 | 
				
			||||||
 | 
					  copy:
 | 
				
			||||||
 | 
					      src: wgbackbone@.service
 | 
				
			||||||
 | 
					      dest: /etc/systemd/system/wgbackbone@.service
 | 
				
			||||||
 | 
					
 | 
				
			||||||
- name: start and enable wireguard mesh
 | 
					- name: start and enable wireguard mesh
 | 
				
			||||||
  systemd:
 | 
					  systemd:
 | 
				
			||||||
      name: wg-quick@wgbackbone.service
 | 
					      name: wgbackbone@{{ item.name }}.service
 | 
				
			||||||
      enabled: yes
 | 
					      enabled: yes
 | 
				
			||||||
      state: started
 | 
					      state: started
 | 
				
			||||||
 | 
					      daemon_reload: yes
 | 
				
			||||||
 | 
					  with_items: "{{ wireguard_bb_peers }}"
 | 
				
			||||||
 | 
				
			|||||||
@ -1,5 +1,5 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					#!/bin/bash
 | 
				
			||||||
{% for peer in wireguard_bb_peers %}
 | 
					ip -4 rule del iif bb{{ item.name }} table ffmyk
 | 
				
			||||||
ip link set down dev bb{{ peer.name }}
 | 
					ip -6 rule del iif bb{{ item.name }} table ffmyk
 | 
				
			||||||
ip link del bb{{ peer.name }} type ip6gretap
 | 
					ip link set down dev bb{{ item.name }}
 | 
				
			||||||
{% endfor %}
 | 
					ip link del bb{{ item.name }}
 | 
				
			||||||
 | 
				
			|||||||
@ -1,7 +1,8 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					#!/bin/bash
 | 
				
			||||||
{% for peer in wireguard_bb_peers %}
 | 
					ip link add bb{{ item.name }} type wireguard
 | 
				
			||||||
ip link add bb{{ peer.name }} type ip6gretap remote {{ peer.address }} local {{ wireguard_bb_address }} ttl 255 dev wgbackbone
 | 
					wg setconf bb{{ item.name }} /etc/wireguard/wgbb{{ item.name }}.conf
 | 
				
			||||||
ip link set mtu 1280 dev bb{{ peer.name }}
 | 
					ip addr add {{ item.address6 }} dev bb{{ item.name }}
 | 
				
			||||||
ip link set up dev bb{{ peer.name }}
 | 
					ip addr add {{ wireguard_bb_ipv4 }}/32 peer {{ item.address }}/32 dev bb{{ item.name }}
 | 
				
			||||||
ip address add {{ wireguard_bb_gre_ipv4 }} peer {{ peer.gre_ipv4 }} dev bb{{ peer.name }}
 | 
					ip link set up dev bb{{ item.name }}
 | 
				
			||||||
{% endfor %}
 | 
					ip -4 rule add iif bb{{ item.name }} table ffmyk priority 10
 | 
				
			||||||
 | 
					ip -6 rule add iif bb{{ item.name }} table ffmyk priority 10
 | 
				
			||||||
 | 
				
			|||||||
					Loading…
					
					
				
		Reference in New Issue