diff --git a/metropolis/node/core/network/static.go b/metropolis/node/core/network/static.go
index 1752810..31ecabc 100644
--- a/metropolis/node/core/network/static.go
+++ b/metropolis/node/core/network/static.go
@@ -125,23 +125,21 @@
 			hasIPv4Autoconfig = true
 		}
 		if i.Ipv6Autoconfig != nil {
-			err := sysctl.Options{
+			opts := sysctl.Options{
 				"net.ipv6.conf." + newLink.Attrs().Name + ".accept_ra": "1",
-			}.Apply()
-			if err != nil {
+			}
+			if err := opts.Apply(); err != nil {
 				return fmt.Errorf("failed enabling accept_ra for interface %q: %w", newLink.Attrs().Name, err)
 			}
 			// TODO(lorenz): Actually implement DHCPv6/Managed flag
 		}
 		for _, a := range i.Address {
-			err := addAddrFromSpec(a, newLink)
-			if err != nil {
+			if err := addAddrFromSpec(a, newLink); err != nil {
 				return fmt.Errorf("failed adding address %q to link: %w", a, err)
 			}
 		}
 		for _, r := range i.Route {
-			err := routeFromSpec(r, newLink)
-			if err != nil {
+			if err := routeFromSpec(r, newLink); err != nil {
 				return fmt.Errorf("failed creating route on interface %q: %w", i.Name, err)
 			}
 		}
