networking – ¿Cómo puedo crear una interfaz Ethernet virtual en una máquina sin un adaptador físico?

Pregunta:

Tengo un ultrabook Dell XPS 13 que tiene un nic wifi, pero no un nic ethernet físico (wlan0, pero no eth0). Necesito crear un adaptador virtual para usar Vagrant con NFS, pero encuentro que el típico ifup eth0:1... falla al ignoring unknown interface eth0:1=eth0:1 . También intenté crear una interfaz virtual contra wlan0 , pero wlan0 el mismo resultado.

¿Cómo puedo crear una interfaz virtual en esta máquina sin una interfaz física?

Respuesta:

Configurar una interfaz ficticia

Si desea crear interfaces de red, pero no tiene una NIC física que la respalde, puede usar el tipo de enlace ficticio. Puede leer más sobre ellos aquí: página de Wikipedia de iproute2 .

Creando eth10

Para crear esta interfaz, primero debe asegurarse de tener cargado el módulo de kernel ficticio. Puedes hacer esto así:

$ sudo lsmod | grep dummy
$ sudo modprobe dummy
$ sudo lsmod | grep dummy
dummy                  12960  0 

Con el controlador ahora cargado, puede crear cualquier interfaz de red ficticia que desee:

$ sudo ip link add eth10 type dummy

NOTA: En versiones anteriores de ip , haría lo anterior de esta manera, parece haber cambiado a lo largo del camino. Manteniendo esto aquí para fines de referencia, pero según los comentarios a través de los comentarios, lo anterior funciona ahora.

$ sudo ip link set name eth10 dev dummy0

Y confírmalo:

$ ip link show eth10
6: eth10: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN mode DEFAULT group default 
    link/ether c6:ad:af:42:80:45 brd ff:ff:ff:ff:ff:ff

Cambiar la MAC

Luego puede cambiar la dirección MAC si lo desea:

$ sudo ifconfig eth10 hw ether 00:22:22:ff:ff:ff
$ ip link show eth10
6: eth10: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN mode DEFAULT group default 
    link/ether 00:22:22:ff:ff:ff brd ff:ff:ff:ff:ff:ff

Creando un alias

Luego puede crear alias encima de eth10.

$ sudo ip addr add 192.168.100.199/24 brd + dev eth10 label eth10:0

Y confírmalos así:

$ ifconfig -a eth10
eth10: flags=130<BROADCAST,NOARP>  mtu 1500
        ether 00:22:22:ff:ff:ff  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

$ ifconfig -a eth10:0
eth10:0: flags=130<BROADCAST,NOARP>  mtu 1500
        inet 192.168.100.199  netmask 255.255.255.0  broadcast 192.168.100.255
        ether 00:22:22:ff:ff:ff  txqueuelen 0  (Ethernet)

O usando ip :

$ ip a | grep -w inet
    inet 127.0.0.1/8 scope host lo
    inet 192.168.1.20/24 brd 192.168.1.255 scope global wlp3s0
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
    inet 192.168.100.199/24 brd 192.168.100.255 scope global eth10:0

¿Eliminar todo esto?

Si desea desenrollar todo esto, puede ejecutar estos comandos para hacerlo:

$ sudo ip addr del 192.168.100.199/24 brd + dev eth10 label eth10:0
$ sudo ip link delete eth10 type dummy
$ sudo rmmod dummy

Referencias

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım