@expectedFailureIfKernelReturnsInvalidFlags()
def test_dhcp_client_ipv4_only(self):
- copy_network_unit('25-veth.netdev', '25-dhcp-server-veth-peer.network', '25-dhcp-client-ipv4-only.network')
+ copy_network_unit('25-veth.netdev', '25-dhcp-server-veth-peer.network', '25-dhcp-client-ipv4-only.network',
+ '25-sit-dhcp4.netdev', '25-sit-dhcp4.network')
self.setup_nftset('addr4', 'ipv4_addr')
self.setup_nftset('network4', 'ipv4_addr', 'flags interval;')
'--dhcp-option=option:domain-search,example.com',
'--dhcp-alternate-port=67,5555',
ipv4_range='192.168.5.110,192.168.5.119')
- self.wait_online('veth99:routable', 'veth-peer:routable')
+ self.wait_online('veth99:routable', 'veth-peer:routable', 'sit-dhcp4:carrier')
self.wait_address('veth99', r'inet 192.168.5.11[0-9]*/24', ipv='-4')
print('## ip address show dev veth99 scope global')
a = socket.inet_ntop(socket.AF_INET, bytearray(i['ConfigProvider']))
self.assertEqual('192.168.5.1', a)
+ print('## tunnel')
+ output = check_output('ip -d link show sit-dhcp4')
+ print(output)
+ self.assertRegex(output, fr'sit (ip6ip )?remote any local {address1} dev veth99')
+
print('## dnsmasq log')
output = read_dnsmasq_log_file()
print(output)
a = socket.inet_ntop(socket.AF_INET, bytearray(i['ConfigProvider']))
self.assertEqual('192.168.5.1', a)
+ print('## tunnel')
+ output = check_output('ip -d link show sit-dhcp4')
+ print(output)
+ self.assertRegex(output, fr'sit (ip6ip )?remote any local {address2} dev veth99')
+
print('## dnsmasq log')
output = read_dnsmasq_log_file()
print(output)