supernode 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. local_node: "{{supernodes[0]}}"
  2. supernode_mesh_mac: "{{local_node.mesh_mac}}"
  3. supernode_mesh_ipv4: "{{local_node.mesh_ip_v4}}"
  4. supernode_bat_macaddress: "{{local_node.bat_mac}}"
  5. supernode_mesh_ipv6: "{{local_node.mesh_ip_v6}}"
  6. supernode_local_ip: "{{local_node.public_ip|default(ansible_default_ipv4.address)}}"
  7. supernode_public_interface: "{{local_node.public_interface|default(ansible_default_ipv4.interface)}}"
  8. supernode_dhcp_range_start: "{{local_node.dhcp_range_start}}"
  9. supernode_dhcp_range_end: "{{local_node.dhcp_range_end}}"
  10. supernode_mesh_backbones:
  11. - name: "{{supernodes[1].name}}"
  12. remote_ip: "{{supernodes[1].public_ip|ipaddr('address')}}"
  13. mesh_ip: "{{supernodes[1].mesh_ip_v4|ipaddr('address')}}"
  14. address_v6: "{{supernodes[1].mesh_ip_v6|ipaddr('address')}}"
  15. local_ip: "{{supernode_local_ip|ipaddr('address')}}"
  16. interface: "{{supernode_public_interface}}"
  17. supernode_other_nameserver: "{{supernode_mesh_backbones|map(attribute='mesh_ip')|map('ipaddr','address')|join(' ')}}"
  18. supernode_other_ntp_server: "{{supernode_mesh_backbones|map(attribute='mesh_ip')|map('ipaddr','address')|join(' ')}}"
  19. supernode_uplinks:
  20. - name: "{{uplinks[0].name}}"
  21. comment: "{{uplinks[0].tunnel[0].comment|default('No comment')}}"
  22. address: "{{local_node.uplink_tunnel_ip|ipaddr('address')}}"
  23. dstaddr: "{{uplinks[0].tunnel[0].tunnel_ip|ipaddr('address')}}"
  24. netmask: "{{uplinks[0].tunnel[0].tunnel_ip|ipaddr('netmask')}}"
  25. endpoint: "{{uplinks[0].public_ip|ipaddr('address')}}"
  26. address_v6: "{{local_node.uplink_tunnel_ip_v6}}"
  27. as: "{{uplinks[0].as}}"
  28. supernode_interfaces:
  29. - name: eth0
  30. auto: true
  31. proto: inet
  32. type: dhcp
  33. - name: eth1
  34. auto: true
  35. proto: inet
  36. type: static
  37. config:
  38. - key: address
  39. value: "{{supernode_local_ip|ipaddr('address')}}"
  40. - key: netmask
  41. value: "{{supernode_local_ip|ipaddr('netmask')}}"
  42. - key: broadcast
  43. value: "{{supernode_local_ip|ipaddr('broadcast')}}"