1 votos

¿Qué significa la bandera MACNAT en un miembro de la interfaz del puente?

En macOS 15.1, cuando una MV configurada para usar networking en puente está en ejecución, tengo la siguiente interfaz de puente, donde en0 es la interfaz de Wi-Fi y vmenet0 es la interfaz de una MV:

bridge100: flags=8863 mtu 1500
    options=63
    ether ca:89:f3:ea:e0:64
    Configuration:
        id 0:0:0:0:0:0 priority 0 hellotime 0 fwddelay 0
        maxage 0 holdcnt 0 proto stp maxaddr 100 timeout 1200
        root id 0:0:0:0:0:0 priority 0 ifcost 0 port 0
        ipfilter disabled flags 0x0
    member: vmenet0 flags=10003
            ifmaxaddr 0 port 23 priority 0 path cost 0
    member: en0 flags=8003
            ifmaxaddr 0 port 15 priority 0 path cost 0
    nd6 options=201
    media: autoselect
    status: active

Me gustaría entender qué hace la bandera MACNAT en este contexto.

Preguntas:

  • ¿Qué hace la bandera MACNAT de en0?
  • ¿En qué se diferencia de una configuración de puente sin miembro con estas banderas?
  • ¿Cómo se puede quitar la bandera del miembro?

1voto

Phill Puntos 126

Conectar una interfaz de red virtual a través de una interfaz física, como Ethernet o Wi-Fi, le permite conectarse a una red externa y aparecer como un host normal para el resto de la red.

¿Cuál es la bandera MACNAT de en0?

La bandera MACNAT establece la dirección MAC de la interfaz bridge como la dirección MAC de en0.

Es decir, todos los paquetes enviados a través de la interfaz puente utilizan la dirección MAC de su interfaz Wi-Fi, lo que oculta efectivamente la dirección MAC de vmenet0 de la red.

MACNAT es similar a Traducción de Direcciones de Red (NAT), pero en lugar de mapear una dirección IP, mapea una dirección MAC.

Para entender por qué es necesario, vea el siguiente párrafo.

¿En qué se diferencia de una configuración de puente sin miembro con estas banderas?

La diferencia es que, cuando la bandera no está configurada, los miembros de una interfaz bridge utilizan sus propias direcciones MAC al enviar paquetes.

Esto es conveniente cuando se está combinando puertos Ethernet en un puerto virtual, ya que ambas interfaces son accesibles con solicitudes ARP.

Sin embargo, como se explica aquí en detalle, no funcionará al utilizar un puente que combine Wi-Fi y una interfaz virtual porque la máquina virtual enviará paquetes con su propia dirección MAC, pero el enrutador no sabrá hacia dónde enviar los paquetes de respuesta porque la dirección MAC de su interfaz Wi-Fi en macOS será diferente.

Afortunadamente, el kernel configura automáticamente la bandera cuando la interfaz Wi-Fi se agrega a la interfaz bridge:

if (wifi_infra) {
    (void)bridge_mac_nat_enable(sc, bif);
}

¿Cómo eliminar la bandera del miembro?

Puede eliminar la bandera con este comando:

sudo ifconfig bridge100 -macnat en0

Para agregar la bandera, utilice este comando:

sudo ifconfig bridge100 macnat en0

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X