Commit Graph

373 Commits

Author SHA1 Message Date
Yu Watanabe 7a2f6fb6f1 test-network: pass environment variables to networkctl 2019-12-16 10:56:02 +09:00
Yu Watanabe 6934ace05d test-network: add a test case for netdev altname 2019-12-16 10:56:02 +09:00
Yu Watanabe 4ef289250f test-network: add a test case for new FQ settings 2019-12-14 12:33:37 +09:00
Yu Watanabe 2e048b14eb
Merge pull request #13915 from ddstreet/ipv6_mtu
Set ipv6 mtu after link-up or device mtu change
2019-12-13 18:33:04 +09:00
Yu Watanabe 9401e48855 test-network: add a test case for the new settings of FQ-CoDel 2019-12-12 23:37:03 +09:00
Yu Watanabe 0baddbd5ee test-network: add a test case for FQ 2019-12-12 17:26:31 +09:00
Yu Watanabe 40821c2ac3 test-network: add a test case for fq-codel 2019-12-11 00:06:31 +09:00
Yu Watanabe 886e07a9cf test-network: add tests for new TBF settings 2019-12-10 01:28:38 +09:00
Yu Watanabe bc942f69aa test-network: make test_bind_carrier more stable 2019-12-08 19:52:01 +00:00
Yu Watanabe debda5a4e5
Merge pull request #14273 from ssahani/ifb
network: introduce IFB
2019-12-08 05:13:08 +09:00
Yu Watanabe b076d5d76d test-network: add test case for IFB 2019-12-08 00:03:29 +09:00
Yu Watanabe dc7d3c5fd4 test-network: add test case for IPv4 DAD 2019-12-06 23:29:28 +09:00
Dan Streetman 7db0544705 test-network: add tests to verify IPv6MTUBytes 2019-12-05 17:53:10 -05:00
Dan Streetman 3e82152543 test-network: disable restart limiting for networkd
Some of the tests restart networkd rapidly, so restart limiting
must be disabled to avoid start ratelimiting from causing test
failures.
2019-12-05 17:53:10 -05:00
Dan Streetman fd372b1a68 test-network: in wait_online() allow a few seconds to reach setup_state 2019-12-05 17:53:03 -05:00
Dan Streetman befd4b8b60 test-network: read link attribute at any depth 2019-12-05 17:50:15 -05:00
Dan Streetman 9dfc1a9339 test-network: allow specifying only individual drop-in files 2019-12-05 17:50:10 -05:00
Yu Watanabe 0ab9279132 test-network: add a test case for SFQ 2019-12-04 20:58:33 +09:00
Yu Watanabe 1b628c4f64 test-network: add test case for TBF 2019-12-04 20:57:48 +09:00
Dan Streetman 426654d728 test-network: Remove/replace non-capturing group regex
The systemd-networkd-tests.py has some regex that uses non-capturing
groups, but there is no need to use that with assertRegex; the
groups aren't referenced so it doesn't matter if it's capturing or
non-capturing.  However, there are a few places where optional groups
should have been used instead, so this changes that.

Specifically, groups like this:
(?:whatever |)
should actually be:
(whatever )?

Additionally, this is specifically needed for these tests to run on
Debian systems, because this assertRegex:
'Link File: (?:/usr)/lib/systemd/network/99-default.link'
needs to be:
'Link File: (/usr)?/lib/systemd/network/99-default.link'
2019-11-01 12:32:49 -04:00
Dan Streetman 7471bcb06e test: check /usr/lib and /lib for systemd binaries
Fedora uses /usr/lib while Debian uses /lib; find the right location
2019-11-01 12:00:57 -04:00
Dan Streetman 856423f14d test/test-network/systemd-networkd-tests.py: suppress stderr for functionality checks 2019-11-01 12:00:53 -04:00
Yu Watanabe ef3c8a92b7 test-network: add tests for qdisc 2019-10-30 09:33:51 +09:00
Yu Watanabe dcd9f07ccf network: add tests for "networkctl reconfigure" 2019-10-24 14:23:17 +09:00
Yu Watanabe 66de86712c test-network: add tests for "networkctl reload" 2019-10-24 14:20:48 +09:00
Yu Watanabe 086bcf5dca test-network: add a test case for nexthop 2019-10-14 21:55:57 +09:00
Zbigniew Jędrzejewski-Szmek 5afe558cfd
Merge pull request #12818 from yuwata/network-issue-8726
network: disable kernel creating prefix route when RouteTable= is set
2019-10-03 15:21:35 +02:00
Susant Sahani 98f0e10429 test-network: Drop start dnsmasq 2019-09-20 08:09:25 +00:00
Yu Watanabe edfbf051e1
Merge pull request #13559 from ssahani/ipv6ra-route
network: make networkd able to advertise IPv6 routes on links
2019-09-18 00:13:08 +09:00
Susant Sahani 9633f977ea Add test for IPv6 Route advertisement 2019-09-17 12:10:19 +02:00
Yu Watanabe 7b3770a75f test-network: add one more test case for LinkLocalAddressing= 2019-09-17 09:45:22 +09:00
Yu Watanabe 2aa7d367ec network: do not create default route for ipv4 link local addressing
When nspawn container with private network starts, networkd creates
the default route for the interface. The route may cause problem on
the host side, and it can be created with DefaultRouteOnDevice= now.
Hence, this makes networkd not create the route implicitly any more.

Closes #13418.
2019-09-15 22:33:11 +09:00
Zbigniew Jędrzejewski-Szmek 57ad760746 network: drop all checks of ipv6_disabled sysctl
*We* control the sysctl setting. If the user configured IPv6, then we apply the
settings, and just make sure that at some point during the configuration the
sysctl is disabled (i.e. ipv6 enabled) if we have IPv6 configured.

Replaces #13283.
2019-08-27 15:31:48 +02:00
Zbigniew Jędrzejewski-Szmek 4eaa2486b8
Merge pull request #13235 from yuwata/network-routing-policy-rule-family-13233
network: add RoutingPolicyRule.Family= setting
2019-08-19 10:08:23 +02:00
Yu Watanabe e4783b548a test-network: update test for PreferredLifetime=0 2019-08-19 00:06:50 +09:00
Yu Watanabe 65c24cd087 test-network: add tests for RoutingPolicyRule.Family=ipv6 and both 2019-08-16 22:02:17 +09:00
William A. Kennington III d1bdafd214 networkd: Keep track of static neighbors
We need to keep track of the static neighbors that are configured on the
interface so that we can delete stale entries that were removed.
2019-08-12 20:28:19 +09:00
William A. Kennington III 0b1cd3e25a networkd: Routes should take the gateway into account
Otherwise, changing the default gateway doesn't purge old gateway routes
left on the system during daemon restart. This also fixes removing other
foreign gateway routes that don't match the expected configuration.

Tested:
    Changed gateway addresses prior to the patch and they lingered on
    the system during each reconfiguration. Applied this patch and
    reconfigured gateways and other routes multiple times and it removed
    the foreign routes that had gateways that didn't match.

Signed-off-by: William A. Kennington III <william@wkennington.com>
2019-08-07 20:32:36 +09:00
Yu Watanabe 36bc2ffbc1 test-network: add tests for new entries in "networkctl status" 2019-07-30 00:02:14 +09:00
Yu Watanabe 72e04ea31c test-network: use [DHCPv4] and [DHCPv6] sections instead of deprecated [DHCP] section 2019-07-25 12:38:57 +09:00
Yu Watanabe c904709288 test-network: add test for Bridge.IGMPVersion= 2019-07-25 10:05:17 +09:00
Yu Watanabe e3cbaeab86 test-network: add tests for issue #6088 2019-07-23 22:08:58 +09:00
Yu Watanabe dd9b10c84f network: add fallback logic for old kernels
It seems that old kernels do not support prefix routes with
non-default route tables. This adds a fallback logic when adding route
fails. In that case, prefix route is created by kernel and the default
route table is used.
2019-07-22 11:36:11 +09:00
Yu Watanabe 156ddf8df7 network: disable kernel creating prefix route when RouteTable= is set
Closes #8726.
2019-07-22 11:34:22 +09:00
Zbigniew Jędrzejewski-Szmek f7e7bb6546 Merge pull request #13070 from yuwata/network-set-route-to-dhcp-dns 2019-07-19 09:35:22 +02:00
Yu Watanabe fb2ba3305b test-network: add test for neighbor with ipv6 lladdr 2019-07-19 07:14:58 +09:00
Yu Watanabe 195a18c17d test-network: add tests for routes to DNS servers provided by DHCPv4 2019-07-19 01:56:14 +09:00
Yu Watanabe 693283cd58 Revert "test-network: extend sleep time"
This reverts commit 7d7bb5c861.

Still the CIs are flaky and the commit just slow down them.
2019-07-17 23:13:40 +09:00
Yu Watanabe 217246a990 test-network: drop warn_about_firewalld() as it is not necessary any more 2019-07-17 06:59:12 +09:00
Yu Watanabe 2225e7fd88 test-network: stop firewalld in setUpModule() 2019-07-17 06:59:12 +09:00
Yu Watanabe 336d18f0ff test-network: add tests for link state file vs resolvectl or timedatectl 2019-07-17 06:59:12 +09:00
Yu Watanabe 7d7bb5c861 test-network: extend sleep time
Even if addresses provided by DHCP is assigned, the state file may not
be written yet, or resolved may not receive the state change signal
yet, or resolved may not process the signal yet...
2019-07-17 01:01:10 +09:00
Yu Watanabe e2aea43f31 test-network: make wait_online() check setup state
Previously, event if link's setup state is in failed, tests may pass,
as systemd-networkd-wait-online success if the state is in failed state.
This makes tests be checked more strictly.
2019-07-16 01:32:24 +09:00
Yu Watanabe e0c1341df2 test-network: add tests for DHCPv4.UseDomains= 2019-07-15 00:43:15 +09:00
Yu Watanabe 6d60f9dbe6 test-network: add tests for route with type local, multicast, anycast, or broadcast 2019-07-12 09:39:43 +09:00
Yu Watanabe 5424fd9573 test-network: test more bridge properties
Imported from networkd-test.py
2019-07-12 09:39:43 +09:00
Yu Watanabe 6fa0524133
Merge pull request #12971 from yuwata/network-reassign-static-routes
network: reassign static routes and process reply address messages
2019-07-12 09:36:16 +09:00
Yu Watanabe c1b01a62d1 test-network: add test for route reassignment 2019-07-11 22:37:58 +09:00
Yu Watanabe 74761cf37e test-network: add testcase that Neighbor.LinkLayerAddress= is IP address 2019-07-11 22:22:29 +09:00
Yu Watanabe d86f5c194c test-network: use Neighbor.LinkLayerAddress= instead of deprecated Neighbor.MACAddress= 2019-07-11 22:22:29 +09:00
Lennart Poettering 66d3159739
Merge pull request #13018 from yuwata/network-tunnel-follow-up-13016
network: drop assertions about Tunnel.family
2019-07-11 12:10:39 +02:00
Yu Watanabe cef94248ff test-network: drop test_udev_driver as it is unstable
The test unexpectedly succeeds on KVM with sanitizer CI.
At least tentatively, let's drop the test.
2019-07-11 11:17:20 +02:00
Lennart Poettering 7e82b4059b
Merge pull request #13006 from yuwata/network-split-dhcp-12917
networkd: DHCPv6 - separate DHCPv6 options from DHCPv4 options
2019-07-11 10:28:03 +02:00
Yu Watanabe 42a29fcb12 test-network: add testcases Tunnel.Remote=any and Local=any 2019-07-11 15:09:50 +09:00
Yu Watanabe e64dc40615 test-network: add test for Xfrm netdev 2019-07-11 11:51:23 +09:00
Yu Watanabe 95082dbef5 test-network: add test for AssignToLoopback= setting 2019-07-11 09:59:06 +09:00
Yu Watanabe e2d5aab32a test-network: add tests for UseDNS= in [DHCP] section 2019-07-10 17:44:43 +09:00
Yu Watanabe b6d587d1d2 test-network: enable systemd-resolved.service 2019-07-10 17:40:14 +09:00
Yu Watanabe 16e233d0bb
Merge pull request #12970 from ddstreet/gh12969
src/network/networkd-dhcp4.c: set prefsrc for classless or static routes
2019-07-08 21:18:04 +09:00
Yu Watanabe c38d2d4d59 test-network: add tests for DHCP.UseRoutes=no with custom route settings
This adds test for b5799eeb07.

Closes #12951.
2019-07-06 08:23:10 +09:00
Yu Watanabe 4c882c16be test-network: add testcase for DHCP client with static address
Testcase for #12969.
2019-07-06 07:39:23 +09:00
Yu Watanabe 6f94379833 test-network: add tests for BridgeVLAN 2019-07-05 16:39:39 +09:00
Yu Watanabe aaae57139b test-network: show debug logs of networkd 2019-07-05 02:47:42 +09:00
Yu Watanabe e28fd95ffb test-network: add udev related tests for networkctl 2019-07-02 09:43:21 +02:00
Yu Watanabe 6b9518a0e8 test-network: add test for Property= in [Match] section 2019-07-01 06:53:35 +09:00
Yu Watanabe 2cf6fdff19 test-network: change default sleep time of start_networkd() 2019-06-18 13:10:23 +09:00
Yu Watanabe 90e3bcbd4d test-network: use wait-online in NetworkdBridgeTests 2019-06-18 13:10:23 +09:00
Yu Watanabe 35a78c5131 test-network: use wait-online in NetworkdBondTests 2019-06-18 12:45:19 +09:00
Yu Watanabe 8d17c386d7 test-network: use setUp() and tearDown() to clear routing policy rule tables 2019-06-18 12:45:17 +09:00
Yu Watanabe ad78d7b027 test-network: rename l2tp_tunnel_remove -> remove_l2tp_tunnels 2019-06-18 11:35:12 +09:00
Yu Watanabe 4ef39b4991 test-network: remove all routing policy rules in specified table 2019-06-18 11:35:12 +09:00
Zbigniew Jędrzejewski-Szmek 6ea420a3b6
Merge pull request #12796 from yuwata/test-network-use-wait-online
test-network: several cleanups
2019-06-15 14:53:04 +02:00
Yu Watanabe 4c2459c692 test-network: drop redundant operstate checking 2019-06-14 16:50:07 +09:00
Yu Watanabe df7f9afaa7 test-network: replace check_link_exists() with wait_online() 2019-06-14 16:49:39 +09:00
Yu Watanabe 01943d43f4 test-network: explicitly set sleep time 2019-06-14 16:47:40 +09:00
Yu Watanabe 5239d7b34e test-network: suppress error message in cleanup process 2019-06-14 16:45:50 +09:00
Yu Watanabe 1285edf39c test-network: add test for ConfigureWithoutCarrier= 2019-06-14 05:25:35 +09:00
Yu Watanabe 4933b97d59 test-network: add more test cases when ipv6 is disabled 2019-06-12 11:04:10 +09:00
Yu Watanabe 1e498853a3 test-network: add tests for KeepConfiguration= 2019-06-06 23:36:27 +09:00
Zbigniew Jędrzejewski-Szmek 88aaf89ecb networkd-tests.py: properly escape pluses in regexps
Python warns that '\+' is an invalid escape. We need either '\\+' or r'\+'.
2019-06-06 14:11:28 +02:00
Zbigniew Jędrzejewski-Szmek ec38833c75 networkd-tests.py: remove some java-style boilerplate
A class was used to put some utility functions under a namespace. But then this
namespace was inherited into classes, so the namespace split was undone. Let's
just define those functions in the module namespace.

(The Utilities class with a few functions still remain, because of the
unittest-style self.assert* craziness.)
2019-06-06 14:11:28 +02:00
Zbigniew Jędrzejewski-Szmek cefd6b3db8 networkd-tests.py: use check_output() instead of unittests' assertEqual()
It's pretty much the same thing, but more in pytest style, without the
unittest boilerplate.
2019-06-06 14:11:28 +02:00
Zbigniew Jędrzejewski-Szmek 371810d18a networkd-tests.py: add helpers to common subprocess call patterns
For normal shell calls, python syntax is quite verbose. We don't need to punish
ourselves like that. In some places we would fork a shell to do argument splitting
for us. We know that our arguments can be safely split on whitespace, so let's do
that ourselves in all cases, without forking a shell.

We also expect command output to be valid text, so let's always set
universal_newlines=True.

This makes things shorter and easier to read. Development is also easier because
it's possible to paste many of the commands directly to/from a shell.
2019-06-06 14:11:28 +02:00
Zbigniew Jędrzejewski-Szmek 632037cf4a networkd-tests.py: remove unused import 2019-06-06 13:58:58 +02:00
Yu Watanabe d90f4f7d91 test-network: do not directly compare two results of "ip address"
As it contains lifetime of the address.
2019-06-05 19:42:12 +09:00
Yu Watanabe e16ffe7954 test-network: do not allow addresses in tentative state 2019-06-05 16:35:20 +09:00
Yu Watanabe 78690bb5d0 test-network: disable SystemCallFilter= when *SAN is enabled 2019-06-04 01:29:28 +09:00
Yu Watanabe 6d5b4efed2 test-network: add test for MTU field of 'networkctl status' 2019-06-04 01:29:28 +09:00
Yu Watanabe bee692fd38 test-network: add tests for "networkctl delete" 2019-06-04 01:29:28 +09:00
Yu Watanabe 1ca44d7dfd test-network: move networkctl related tests to NetworkctlTests class 2019-06-04 01:29:24 +09:00
Yu Watanabe 72917fcc65 test-network: show systemd-networkd.service
As there may exist some other drop-in configs.
2019-05-31 13:58:27 +09:00
Yu Watanabe d4fda2a55c test-network: stop service before editing unit file 2019-05-31 09:52:48 +09:00
Yu Watanabe fa4c6095d7 test-network: add --lsan-options option 2019-05-31 08:52:27 +09:00
Yu Watanabe 94c0312294 test-network: make the test take ASAN and UBSAN options 2019-05-30 20:51:35 +09:00
Yu Watanabe 9c1ae4844e test-network: make path to networkd or friends configurable 2019-05-30 20:49:56 +09:00
Zbigniew Jędrzejewski-Szmek 8e30a1af24
Merge pull request #12690 from yuwata/test-network-and-man-netdev
test-network,man: trivial cleanups
2019-05-29 12:39:58 +02:00
Yu Watanabe 53c32c2b9b test-network: bump time limit for wait_address()
Maximum time interval of DHCPv4 request is 63sec.
So, setting 100sec is enough.
2019-05-29 12:37:41 +02:00
Yu Watanabe 931d11057c test-network: drop 25-nlmon.network 2019-05-29 17:07:06 +09:00
Yu Watanabe 0feeac6418
Merge pull request #12635 from yuwata/nlmon-support
network: add nlmon support
2019-05-29 10:22:09 +09:00
Yu Watanabe 811f33d0b1 test-network: add a basic test for nlmon 2019-05-28 22:47:20 +09:00
Yu Watanabe 8ad8292452 test-network: use wait_online() in NetworkdDHCPServerTests or friends 2019-05-28 22:21:25 +09:00
Yu Watanabe fdcd1ec54a test-network: move test_domain() to NetworkdNetworkTests class 2019-05-28 22:21:24 +09:00
Yu Watanabe be68c2c965 test-network: rename needlessly long class names 2019-05-28 22:21:24 +09:00
Yu Watanabe 2629df4710 test-network: use wait_online() instead of waiting for 10 seconds
But some tests requires both IPv4 and IPv6 addresses are configured.
Only in that case wait for addresses to be configured.
2019-05-28 22:21:24 +09:00
Yu Watanabe 58df8fb7dc test-network: drop unused link 2019-05-28 22:21:24 +09:00
Yu Watanabe 350e05d274 test-network: rename link_remove() to remove_links() 2019-05-28 22:21:24 +09:00
Yu Watanabe 5f68a6a46a test-network: remove routes even on failure 2019-05-28 22:21:24 +09:00
Yu Watanabe 95c74b0aff test-network: use setUp() and tearDown() to delete routing policy rule tables 2019-05-28 22:21:24 +09:00
Yu Watanabe def9fc0d65 test-network: remove fou ports on failure 2019-05-28 22:21:24 +09:00
Yu Watanabe 9f10126f3c test-network: stop dnsmasq before removing links 2019-05-28 22:21:24 +09:00
Yu Watanabe 1836bedf92 test-network: warn when firewalld.service is running 2019-05-28 22:21:24 +09:00
Yu Watanabe b6efd6614c test-network: add tests for issue #12490 2019-05-28 22:21:23 +09:00
Yu Watanabe f63b14d35e test-network: add basic tests for vxcan device 2019-05-24 10:56:54 +09:00
Yu Watanabe 0aefa2274d test-network: add more tests for LinkLocalAddressing=yes on various netdevs 2019-05-24 10:54:53 +09:00
Yu Watanabe 241836a87c test-network: drop pure test for dummy device
The dummy device is well used in test-network. So, the dropped test
is completely redundant.
2019-05-23 23:55:57 +09:00
Yu Watanabe b08b056e19 test-network: drop redundant check_link_exists()
When wait_online() passes, then the link must exist.
2019-05-23 23:45:53 +09:00
Yu Watanabe 17bcf0a09f test-network: drop wait_online() from test_ip6gre_tunnel() 2019-05-22 18:02:20 +09:00
Yu Watanabe be0e1ef9b5 test-network: wait for bridge slave to be enslaved in test_bridge_ignore_carrier_loss_frequent_loss_and_gain() 2019-05-22 17:59:39 +09:00
Yu Watanabe 0a5dced161 test-network: drop unused variable 2019-05-22 17:58:46 +09:00
Yu Watanabe a1b3559088 test-network: add test that vcan device can be configured state 2019-05-22 17:58:46 +09:00
Yu Watanabe 671dacdf0c test-network: add basic tests for veth interfaces 2019-05-22 17:58:46 +09:00
Yu Watanabe 2746d30797 test-network: add tests for flags of tun or tap devices 2019-05-22 17:58:46 +09:00
Yu Watanabe 077f9abc3a test-network: add tests for LinkLocalAddressing= on ipvlan or friends 2019-05-22 17:58:46 +09:00
Yu Watanabe 40921f0886 test-network: add tests for Flags= in [IPVTAP] 2019-05-22 17:58:46 +09:00
Yu Watanabe bc6dff6e25 test-network: add tests for Flags= in [IPVLAN] 2019-05-22 17:58:46 +09:00
Yu Watanabe 460feb6127 test-network: add tests for Mode= setting in [MACVTAP] section 2019-05-22 17:58:46 +09:00
Yu Watanabe dff9792b15 test-network: add tests for Mode= setting in [MACVLAN] section 2019-05-22 17:58:46 +09:00
Yu Watanabe 3d16512423 test-network: convert jiffies to sec 2019-05-22 17:58:46 +09:00
Yu Watanabe 8d7f098756 test-network: show interface status when wait_online() fails 2019-05-22 17:58:46 +09:00
Yu Watanabe a9a2ee6a96 test-network: use wait_online() more 2019-05-22 17:58:46 +09:00
Yu Watanabe e39cc4450d test-network: introduce check_link_exists() 2019-05-22 17:58:46 +09:00
Yu Watanabe c815f33e70 test-network: use wait_online() more 2019-05-22 17:58:46 +09:00
Yu Watanabe 881b1f358f test-network: use splitlines() at one more place 2019-05-22 17:58:46 +09:00
Yu Watanabe 2700d2c7dc test-network: wait for bond interface to be no-carrier operational state 2019-05-19 05:39:45 +09:00
Yu Watanabe ce87a19087 test-network: enable universal_newline= flag for subprocess.check_output() 2019-05-19 05:39:21 +09:00
Yu Watanabe 4b3cf93507 test-network: remove unnecessary links 2019-05-19 05:29:25 +09:00
Yu Watanabe 3ccf7af087 test-network: fix underlying device name 2019-05-19 05:27:56 +09:00
Yu Watanabe 791c1140c9 test-network: use check_operstate() helper function where applicable 2019-05-19 05:27:56 +09:00
Yu Watanabe 2be0b6fc5e test-network: add get_operstate() and check_operstate() helper functions 2019-05-19 05:27:46 +09:00
Yu Watanabe a32a00831c
Merge pull request #12574 from yuwata/network-mtu-issue-12552
network: do not always bump MTU with additional 4bytes
2019-05-16 08:25:48 +02:00