GNU/Linux >> Tutoriales Linux >  >> Linux

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

Tengo un ultrabook Dell XPS 13 que tiene una NIC wifi, pero no una NIC Ethernet física (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 recibió el mismo resultado.

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

Respuesta aceptada:

Configuración de 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 del 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 las interfaces de red ficticias que desee:

$ sudo ip link add eth10 type dummy

NOTA: En versiones anteriores de ip harías lo anterior de esta manera, parece haber cambiado en el camino. Mantengo 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

A continuación, 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

Crear un alias

A continuación, puede crear alias sobre 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

¿Quitar todo esto?

Si quieres deshacerte de todo esto, puedes 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

  • Miniconsejo:configuración de alias de IP en Fedora
  • Redes Linux:interfaces ficticias y puentes virtuales
  • página man de ip-link
  • iproute2 CÓMO
  • hoja de trucos de iroute2
Relacionado:¿El último kernel de CentOS7 se movió de "kernel.ko" a "kernel.ko.xz"?
Linux
  1. Cómo crear un host virtual Nginx (bloque de servidor)

  2. Cómo comprobar si un sistema Linux es una máquina física o virtual

  3. Cómo crear una segunda partición primaria o adicional en una máquina virtual OpenStack

  4. ¿Cómo crear una salida virtual en Pulseaudio?

  5. ¿Cómo verificar si el sistema Linux se está ejecutando en un sistema físico o una máquina virtual?

Cómo crear una máquina virtual en KVM en la línea de comandos

Cómo crear una máquina virtual con Vagrant y VirtualBox

¿Cómo crear una nueva Máquina Virtual en Proxmox?

Cómo crear una plantilla de máquina virtual KVM

Cómo crear máquinas virtuales en KVM usando Virt-Manager

VMware:cómo crear una máquina virtual e instalar un sistema operativo invitado mediante vSphere Client