|
1 | 1 | <network {% if item.ipv6 is defined %}ipv6='yes'{% endif %} connections='1'> |
2 | 2 | <name>{{ item.name }}</name> |
3 | | - <forward mode='{{ item.mode }}'/> |
| 3 | + {% if item.mode is defined %}<forward mode='{{ item.mode }}'/>{% endif %} |
4 | 4 | <bridge name='{{ item.bridge }}'/> |
5 | | -{% if item.mode == 'route' or item.mode == 'nat' %} |
| 5 | +{% if item.mode is defined %} |
| 6 | + {% if item.mode == 'route' or item.mode == 'nat' %} |
6 | 7 | <domain name='{{ item.domain|default(item.name) }}'/> |
7 | 8 | <ip address='{{ item.ip }}' netmask='{{ item.netmask }}'> |
8 | | - {% if item.dhcp_start is defined and item.dhcp_end is defined %} |
| 9 | + {% if item.dhcp_start is defined and item.dhcp_end is defined %} |
9 | 10 | <dhcp> |
10 | 11 | <range start='{{ item.dhcp_start }}' end='{{ item.dhcp_end }}'/> |
11 | 12 | </dhcp> |
12 | | - {% endif %} |
| 13 | + {% endif %} |
13 | 14 | </ip> |
14 | | - {% if item.routes is defined %} |
15 | | - {% for route in item.routes %} |
| 15 | + {% if item.routes is defined %} |
| 16 | + {% for route in item.routes %} |
16 | 17 | <route address="{{ route.address }}" prefix="{{ route.prefix }}" gateway="{{ route.gateway }}" {% if route.metric is defined %} metric='{{ route.metric }}' {% endif %}/> |
17 | | - {% endfor %} |
| 18 | + {% endfor %} |
| 19 | + {% endif %} |
| 20 | + {% if item.ipv6 is defined and item.ipv6_prefix is defined %} |
| 21 | + <ip family='ipv6' address='{{ item.ipv6 }}' prefix='{{ item.ipv6_prefix }}'> |
| 22 | + </ip> |
| 23 | + {% endif %} |
| 24 | + {% if item.routesv6 is defined %} |
| 25 | + {% for route in item.routesv6 %} |
| 26 | + <route family="ipv6" address="{{ route.address }}" prefix="{{ route.prefix }}" gateway="{{ route.gateway }}" {% if route.metric is defined %} metric='{{ route.metric }}' {% endif %}/> |
| 27 | + {% endfor %} |
| 28 | + {% endif %} |
18 | 29 | {% endif %} |
| 30 | +{% else %} |
| 31 | + <domain name='{{ item.domain|default(item.name) }}'/> |
| 32 | + <ip address='{{ item.ip }}' netmask='{{ item.netmask }}'> |
| 33 | + {% if item.dhcp_start is defined and item.dhcp_end is defined %} |
| 34 | + <dhcp> |
| 35 | + <range start='{{ item.dhcp_start }}' end='{{ item.dhcp_end }}'/> |
| 36 | + </dhcp> |
| 37 | + {% endif %} |
| 38 | + </ip> |
19 | 39 | {% if item.ipv6 is defined and item.ipv6_prefix is defined %} |
20 | 40 | <ip family='ipv6' address='{{ item.ipv6 }}' prefix='{{ item.ipv6_prefix }}'> |
21 | 41 | </ip> |
22 | 42 | {% endif %} |
23 | | - {% if item.routesv6 is defined %} |
24 | | - {% for route in item.routesv6 %} |
25 | | - <route family="ipv6" address="{{ route.address }}" prefix="{{ route.prefix }}" gateway="{{ route.gateway }}" {% if route.metric is defined %} metric='{{ route.metric }}' {% endif %}/> |
26 | | - {% endfor %} |
27 | | - {% endif %} |
28 | 43 | {% endif %} |
29 | 44 | </network> |
0 commit comments