[qemu] Revert to user networking for `botanist qemu`

There are tests that use this codepath that do not work with an emulated Tap interface.

Change-Id: I11cd5cf86fe78b247b02aed29061769568ebc0bf
diff --git a/botanist/target/qemu.go b/botanist/target/qemu.go
index 4ce32e7..a9faf9b 100644
--- a/botanist/target/qemu.go
+++ b/botanist/target/qemu.go
@@ -66,6 +66,9 @@
 	// KVM specifies whether to enable hardware virtualization acceleration.
 	KVM bool `json:"kvm"`
 
+	// Whether User networking is enabled; if false, a Tap interface will be used.
+	UserNetworking bool `json:"user_networking"`
+
 	// MinFS is the filesystem to mount as a device.
 	MinFS *MinFS `json:"minfs,omitempty"`
 }
@@ -162,15 +165,18 @@
 		})
 	}
 
-	networks := []qemu.Netdev{
-		qemu.Netdev{
-			ID: "net0",
-			Tap: &qemu.NetdevTap{
-				Name: defaultInterfaceName,
-			},
-			MAC: defaultMACAddr,
-		},
+	netdev := qemu.Netdev{
+		ID:  "net0",
+		MAC: defaultMACAddr,
 	}
+	if t.config.UserNetworking {
+		netdev.User = &qemu.NetdevUser{}
+	} else {
+		netdev.Tap = &qemu.NetdevTap{
+			Name: defaultInterfaceName,
+		}
+	}
+	networks := []qemu.Netdev{netdev}
 
 	config := qemu.Config{
 		Binary:   qemuSystem,
diff --git a/cmd/botanist/qemu.go b/cmd/botanist/qemu.go
index 4dfd444..c8b5590 100644
--- a/cmd/botanist/qemu.go
+++ b/cmd/botanist/qemu.go
@@ -85,11 +85,12 @@
 
 	// TODO: pass this directly from a file.
 	config := target.QEMUConfig{
-		CPU:    cmd.cpu,
-		Memory: cmd.memory,
-		Path:   cmd.qemuBinDir,
-		Target: cmd.targetArch,
-		KVM:    cmd.enableKVM,
+		CPU:            cmd.cpu,
+		Memory:         cmd.memory,
+		Path:           cmd.qemuBinDir,
+		Target:         cmd.targetArch,
+		KVM:            cmd.enableKVM,
+		UserNetworking: true,
 	}
 	if cmd.minFSImage != "" {
 		config.MinFS = &target.MinFS{