2019-06-28 15:35:38 +08:00
|
|
|
auto mac0
|
|
|
|
iface mac0 inet static
|
2023-11-28 16:56:55 +08:00
|
|
|
address {{ node_pod_cidr|ansible.utils.ipaddr('net')|ansible.utils.ipaddr(1)|ansible.utils.ipaddr('address') }}
|
|
|
|
network {{ node_pod_cidr|ansible.utils.ipaddr('network') }}
|
|
|
|
netmask {{ node_pod_cidr|ansible.utils.ipaddr('netmask') }}
|
|
|
|
broadcast {{ node_pod_cidr|ansible.utils.ipaddr('broadcast') }}
|
2019-06-28 15:35:38 +08:00
|
|
|
pre-up ip link add link {{ macvlan_interface }} mac0 type macvlan mode bridge
|
2021-04-29 20:20:50 +08:00
|
|
|
{% for host in groups['kube_node'] %}
|
2019-06-28 15:35:38 +08:00
|
|
|
{% if hostvars[host]['access_ip'] is defined %}
|
|
|
|
{% if hostvars[host]['node_pod_cidr'] != node_pod_cidr %}
|
|
|
|
post-up ip route add {{ hostvars[host]['node_pod_cidr'] }} via {{ hostvars[host]['access_ip'] }}
|
|
|
|
{% endif %}
|
|
|
|
{% endif %}
|
|
|
|
{% endfor %}
|
|
|
|
{% if enable_nat_default_gateway %}
|
2023-11-28 16:56:55 +08:00
|
|
|
post-up iptables -t nat -I POSTROUTING -s {{ node_pod_cidr|ansible.utils.ipaddr('net') }} -o {{ node_default_gateway_interface }} -j MASQUERADE
|
2019-06-28 15:35:38 +08:00
|
|
|
{% endif %}
|
2021-04-29 20:20:50 +08:00
|
|
|
{% for host in groups['kube_node'] %}
|
2019-06-28 15:35:38 +08:00
|
|
|
{% if hostvars[host]['access_ip'] is defined %}
|
|
|
|
{% if hostvars[host]['node_pod_cidr'] != node_pod_cidr %}
|
|
|
|
post-down ip route del {{ hostvars[host]['node_pod_cidr'] }} via {{ hostvars[host]['access_ip'] }}
|
|
|
|
{% endif %}
|
|
|
|
{% endif %}
|
|
|
|
{% endfor %}
|
2023-11-28 16:56:55 +08:00
|
|
|
post-down iptables -t nat -D POSTROUTING -s {{ node_pod_cidr|ansible.utils.ipaddr('net') }} -o {{ node_default_gateway_interface }} -j MASQUERADE
|
2019-06-28 15:35:38 +08:00
|
|
|
post-down ip link delete mac0
|