1.3 IEEE 802.11: Capa MAC 74
1.3.6 Ejemplos de Modos de Trabajo 128
1.3.6.3 Ejemplo de enlaces Punto a Punto 135
Los ejemplos a continuación se realizan sobre equipos Mikrotik Routerboards corriendo RouterOS. Los equipos tienen conectadas placas mini-PCI que trabajan con 802.11a. La distribución física, y como se los conecta, se muestra en la figura 1.78.
Figura 1.78 Disposición del laboratorio para las pruebas en modo bridge
Esta combinación de hardware y software es muy versátil, permitiendo trabajar como router o como bridge. A nivel wireless, los equipos permiten ser configurados en diversos modos como AP-
bridge, Bridge, Station, etc. Para configurar un enlace Punto-a-
Punto existen varias alternativas. Una es colocar cada equipo en
modo Bridge wireless. Los equipos Mikrotik en modo Bridge a nivel wireless permiten la conexión de un cliente únicamente, por lo tanto, sólo se asociarán mutuamente. De forma adicional al modo se debe configurar a ambos para que trabajen con WDS. En este caso, el WDS se configura de forma dinámica, es decir, automáticamente se descubren por el mismo SSID y se asocian. Otra cuestión importante es crear una interfaz de bridge que abarque la LAN inalámbrica y la Ethernet. En los ejemplos para capturar el tráfico analizado se uso el siguiente comando.
root@STA-Z:~# airodump-ng -b a --channel 36 wlan0 -w mktk-802.11a-raw
Configuración en modo Bridge (Lado llamado AP):
Primero se configura uno de los equipos bridge (llamado AP). Antes de proceder con la configuración se muestra la salida de las interfaces que posee.
[admin@MikroTik] > /system identity set name=AP-MikroTik [admin@AP-MikroTik] > /interface ethernet print Flags: X - disabled, R - running, S - slave
# NAME MTU MAC-ADDRESS ARP MASTER-PORT SWITCH 0 R ether1 1500 00:0C:42:27:18:CD enabled
[admin@AP-MikroTik] > /interface wireless print Flags: X - disabled, R - running
0 R name="wlan1" mtu=1500 mac-address=00:0F:A3:DD:C4:20 arp=enabled interface-type=Atheros AR5213 ...
Luego se configura la interfaz inalámbrica de acuerdo a lo indicado. [admin@AP-MikroTik] >
/interface wireless
set wlan1 mode=bridge wds-mode=dynamic band=5ghz frequency=5180 \
security-profile=default wds-default-bridge=bridge1 ssid=TEST
La configuración completa de todos los parámetros se muestra a continuación.
[admin@AP-MikroTik] > /interface wireless export /interface wireless
set wlan1 ack-timeout=dynamic adaptive-noise-immunity=none allow-sharedkey=no \ antenna-gain=0 antenna-mode=ant-a area="" arp=enabled band=5ghz \
basic-rates-a/g=6Mbps basic-rates-b=1Mbps burst-time=disabled comment="" \ compression=no country=no_country_set default-ap-tx-limit=0 \
default-authentication=yes default-client-tx-limit=0 default-forwarding=\ yes dfs-mode=none disable-running-check=no disabled=no \
disconnect-timeout=3s frame-lifetime=0 frequency=5180 frequency-mode=\ manual-txpower hide-ssid=no hw-retries=4 mac-address=00:0F:A3:DD:C4:20 \ max-station-count=2007 mode=bridge mtu=1500 name=wlan1 \
noise-floor-threshold=default on-fail-retry-time=100ms \ periodic-calibration=default periodic-calibration-interval=60 \ preamble-mode=both proprietary-extensions=post-2.9.25 radio-name=\ 000FA3DDC420 rate-set=default scan-list=default security-profile=default \ ssid=TEST station-bridge-clone-mac=00:00:00:00:00:00 \
supported-rates-a/g=6Mbps,9Mbps,12Mbps,18Mbps,24Mbps,36Mbps,48Mbps,54Mbps \ supported-rates-b=1Mbps,2Mbps,5.5Mbps,11Mbps tx-power-mode=default \ update-stats-interval=disabled wds-cost-range=50-150 wds-default-bridge=\ bridge1 wds-default-cost=100 wds-ignore-ssid=no wds-mode=dynamic \ wmm-support=disabled
Se debe construir un bridge entre la interfaz Ethernet y la wireless. Se asigna una dirección IP a la interfaz Ethernet, que es accesible desde cualquiera de los segmentos físicos pertenecientes al mismo bridge (en otra configuración podría asignarse directamente al bridge). [admin@AP-MikroTik] >
/interface bridge port
add bridge=bridge1 comment="" disabled=no edge=auto external-fdb=auto \ horizon=none interface=wlan1 path-cost=10 point-to-point=auto priority=\ 0x80
add bridge=bridge1 comment="" disabled=no edge=auto external-fdb=auto \ horizon=none interface=ether1 path-cost=10 point-to-point=auto priority=\ 0x80
/interface bridge
add admin-mac=00:00:00:00:00:00 ageing-time=5m arp=enabled auto-mac=yes \ comment="" disabled=no forward-delay=15s max-message-age=20s mtu=1500 \ name=bridge1 priority=0x8000 protocol-mode=none transmit-hold-count=6 /ip address
add address=192.168.88.254/24 broadcast=192.168.88.255 comment=\
"default configuration" disabled=no interface=ether1 network=192.168.88.0
Al final se muestra el estado de la interfaz y se ve que el otro extremo aún no está registrado ya que no se ha configurado aún.
[admin@AP-MikroTik] > /interface wireless print mode=ap-bridge ssid="TEST" frequency=5180
band=5ghz scan-list=default antenna-mode=ant-a wds-mode=dynamic wds-default-bridge=bridge1 wds-ignore-ssid=no
default-authentication=yes default-forwarding=yes default-ap-tx-limit=0 default-client-tx-limit=0 hide-ssid=no security-profile=default compression=no
[admin@AP-MikroTik] > /interface wireless registration-table print
# INTERFACE RADIO-NAME MAC-ADDRESS AP SIGNAL... TX-RATE UPTIME
Configuración en modo Bridge (lado llamado Station):
La configuración es idéntica, sólo cambia el nombre y la dirección IP que se le asigna.
[admin@MikroTik] > /system identity set name=Station-MikroTik [admin@Station-MikroTik] >
/interface wireless
set wlan1 mode=bridge wds-mode=dynamic band=5ghz frequency=5180 \ security-profile=default ssid=TEST
/ip address
add address=192.168.88.1/24 broadcast=192.168.88.255 comment=\
"default configuration" disabled=no interface=ether1 network=192.168.88.0
/interface bridge port ...
/interface bridge ...
Una vez configurado se asocian los equipos.
[admin@Station-MikroTik] > /interface wireless registration-table print
# INTERFACE RADIO-NAME MAC-ADDRESS AP SIGNAL... TX-RATE UPTIME 0 wlan1 000FA3DDC420 00:0F:A3:DD:C4:20 yes -71dBm... 54Mbps 5s
Se pueden observar los interfaces WDS creadas de forma dinámica. [admin@AP-MikroTik] > /interface wireless wds print
Flags: X - disabled, R - running, D - dynamic
master-interface=wlan1 wds-address=00:15:6D:53:D5:41
[admin@Station-MikroTik] > /interface wireless wds print Flags: X - disabled, R - running, D - dynamic
0 RD name="wds1" mtu=1500 mac-address=00:15:6D:53:D5:41 arp=enabled \ master-interface=wlan1
wds-address=00:0F:A3:DD:C4:20
A continuación se generan mensajes ICMP para probar que todo funcione de forma adecuada y poder obtener el tráfico a analizar.
[admin@AP-MikroTik] > ping 192.168.88.1 192.168.88.1 64 byte ping: ttl=64 time=8 ms 192.168.88.1 64 byte ping: ttl=64 time=3 ms 192.168.88.1 64 byte ping: ttl=64 time=1 ms 192.168.88.1 64 byte ping: ttl=64 time=1 ms ...
[admin@Station-MikroTik] > ping 192.168.88.254 192.168.88.254 64 byte ping: ttl=64 time=5 ms 192.168.88.254 64 byte ping: ttl=64 time=7 ms 192.168.88.254 64 byte ping: ttl=64 time=7 ms 192.168.88.254 64 byte ping: ttl=64 time=6 ms ...
root@STA-Z:~# ping 192.168.88.2
PING 192.168.88.2 (192.168.88.2) 56(84) bytes of data. 64 bytes from 192.168.88.2: icmp_seq=1 ttl=64 time=0.058 ms 64 bytes from 192.168.88.2: icmp_seq=2 ttl=64 time=0.049 ms ...
De la misma forma que se generan los WDS de forma dinámica se lo puede configurar manualmente, WDS estáticos. Para esto se debe colocar la dirección MAC del otro extremo en cada AP.
[admin@AP-MikroTik] >
/interface wireless wds add master-interface=wlan1 name=wds-station \ wds-address=00:15:6D:53:D5:41
/interface wireless wds print Flags: X - disabled, R - running, D - dynamic
0 R name="wds-station" mtu=1500 mac-address=00:0F:A3:DD:C4:20 arp=enabled master-interface=wlan1 wds-address=00:15:6D:53:D5:41
/interface wireless wds set wds-station disabled=no /interface wireless set wlan1 wds-mode=static
El resultado final es el mismo que la configuración del WDS de forma dinámica.
Configuración de Modo Station:
Si se configura un equipo como Station (estación) y el otro como AP o Bridge (AP con un solo cliente), un equipo atrás del equipo con el rol de Station, no puede llegar de forma adecuada al resto de los equipos (al revés, de los que están atrás del AP, sí). Esto sucede al configurar el enlace como bridge transparente. El problema surge debido a que en este modo solo se tienen 3 direcciones MAC, la del equipo Station la del Bridge (BSSID) y restaría una que la usaría el equipo que consulta, en este caso falta la del equipo destino. Funcionaría si el equipo como Station en lugar de configurarse como birdge transparente se lo pusiera como router. En el ejemplo se configura un AP en modo Bridge y el otro en modo Station. El AP en modo Station tiene la dirección IP: 192.168.88.1, el otro la 192.168.88.254.
[admin@AP-MikroTik] > /interface wireless print Flags: X - disabled, R - running
0 R name="wlan1" mtu=1500 mac-address=00:0F:A3:DD:C4:20 arp=enabled interface-type=Atheros AR5213 mode=bridge ssid="TEST" frequency=5180 band=5ghz scan-list=default antenna-mode=ant-a wds-mode=disabled wds-default-bridge=none wds-ignore-ssid=no default-authentication=yes default-forwarding=yes default-ap-tx-limit=0 default-client-tx-limit=0 hide-ssid=no security-profile=default compression=no
[admin@Station-MikroTik] > /interface wireless print Flags: X - disabled, R - running
0 R name="wlan1" mtu=1500 mac-address=00:15:6D:53:D5:41 arp=enabled interface-type=Atheros AR5213 mode=station ssid="TEST" frequency=5180 band=5ghz scan-list=default antenna-mode=ant-a wds-mode=disabled wds-default-bridge=none wds-ignore-ssid=no default-authentication=yes default-forwarding=yes default-ap-tx-limit=0 default-client-tx-limit=0 hide-ssid=no security-profile=default compression=no
Luego, haciendo las pruebas desde el equipo que se encuentra conectado directamente al AP que está en modo Station se ve que no funciona correctamente.
root@STA-B:~# ping 192.168.88.1
PING 192.168.88.1 (192.168.88.1) 56(84) bytes of data. 64 bytes from 192.168.88.1: icmp_seq=1 ttl=64 time=1.06 ms 64 bytes from 192.168.88.1: icmp_seq=2 ttl=64 time=0.909 ms ^C
--- 192.168.88.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms rtt min/avg/max/mdev = 0.909/0.984/1.060/0.081 ms
root@STA-B:~# ping 192.168.88.254
PING 192.168.88.254 (192.168.88.254) 56(84) bytes of data. From 192.168.88.2 icmp_seq=2 Destination Host Unreachable From 192.168.88.2 icmp_seq=3 Destination Host Unreachable
^C
--- 192.168.88.254 ping statistics ---
4 packets transmitted, 0 received, +2 errors, 100% packet loss, time 3014ms ... [admin@Station-MikroTik] > ping 192.168.88.254 192.168.88.254 ping timeout 192.168.88.254 ping timeout 192.168.88.254 ping timeout
4 packets transmitted, 0 packets received, 100% packet loss root@STA-B:~# tcpdump -n -i eth0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes 16:23:08.483201 ARP, Request who-has 192.168.88.254 tell 192.168.88.1, length 46
16:23:09.483098 ARP, Request who-has 192.168.88.254 tell 192.168.88.1, length 46
16:23:10.502967 ARP, Request who-has 192.168.88.254 tell 192.168.88.1, length 46
16:23:11.502881 ARP, Request who-has 192.168.88.254 tell 192.168.88.1, length 46
Para que se puedan enlazar como bridges, el equipo debe estar en
modo Station-WDS (nombre particular usado por Mikrotik y
protocolo propietario) o modo Station-Pseudobridge (nombre
particular usado por Mikrotik), que es igual que el modo Station pero realiza traducciones de direcciones MAC (MAC address translation) sobre todo el tráfico “bridgeado”, por lo tanto, no es un bridge totalmente transparente.
Configuración de Modo Station-WDS:
El Modo Station-WDS es propietario, por lo tanto, sólo funciona entre equipos con RouterOS. Se negocia la conexión y se genera una interfaz WDS separada de las creadas en WDS estándar. Se establece una conexión Punto a Punto entre la estación y el equipo como AP. Todo el tráfico enviado por la WDS del AP es directamente llevado a la estación y todo el tráfico que envía la estación es recibido por el AP a través de la interfaz de WDS. Las direcciones L2 (MAC) son conservadas, por lo tanto, cumple el rol de bridge transparente. Este modo utiliza 4 (cuatro) direcciones MAC en 802.11. Ejemplo de configuración:
[admin@AP-MikroTik] > /interface wireless set wlan1 wds-mode=dynamic \ wds-default-bridge=bridge1
[admin@AP-MikroTik] > /interface wireless print Flags: X - disabled, R - running
0 R name="wlan1" mtu=1500 mac-address=00:0F:A3:DD:C4:20 arp=enabled interface-type=Atheros AR5213 mode=bridge ssid="TEST" frequency=5180 band=5ghz scan-list=default antenna-mode=ant-a wds-mode=dynamic
wds-default-bridge=bridge1 wds-ignore-ssid=no default-authentication=yes default-forwarding=yes default-ap-tx-limit=0 default-client-tx-limit=0 hide-ssid=no security-profile=default compression=no
Luego se configura la estación.
[admin@Station-MikroTik] > /interface wireless set wlan1 mode=station-wds [admin@Station-MikroTik] > /interface wireless print
Flags: X - disabled, R - running
0 R name="wlan1" mtu=1500 mac-address=00:15:6D:53:D5:41 arp=enabled
interface-type=Atheros AR5213 mode=station-wds ssid="TEST" frequency=5180 band=5ghz scan-list=default antenna-mode=ant-a wds-mode=disabled
wds-default-bridge=none wds-ignore-ssid=no default-authentication=yes default-forwarding=yes default-ap-tx-limit=0 default-client-tx-limit=0 hide-ssid=no security-profile=default compression=no
Se observa la interfaz WDS creada de forma dinámica en el AP. En el cliente no se crea de la forma tradicional.
[admin@AP-MikroTik] > /interface wireless wds print Flags: X - disabled, R - running, D - dynamic
0 RD name="wds1" mtu=1500 mac-address=00:0F:A3:DD:C4:20 \ arp=enabled master-interface=wlan1
wds-address=00:15:6D:53:D5:41
Se realizan las pruebas para observar que el enlace funciona correctamente.
root@STA-B:~# ping 192.168.88.3
PING 192.168.88.1 (192.168.88.3) 56(84) bytes of data. 64 bytes from 192.168.88.3: icmp_seq=1 ttl=64 time=1.06 ms 64 bytes from 192.168.88.3: icmp_seq=2 ttl=64 time=0.909 ms ^C
--- 192.168.88.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1001ms rtt min/avg/max/mdev = 0.909/0.984/1.060/0.081 ms
root@STA-Z:~# ping 192.168.88.2
PING 192.168.88.2 (192.168.88.2) 56(84) bytes of data. 64 bytes from 192.168.88.2: icmp_seq=1 ttl=64 time=9.67 ms 64 bytes from 192.168.88.2: icmp_seq=2 ttl=64 time=1.13 ms ^C
En la figura 1.79 se muestra una captura de la trama generada mediante el ejemplo.
Figura 1.79 Trama MAC 802.11 en modo station-WDS
Configuración de Modo Station-Pseudobridge:
El modo Station-Pseudobridge funciona como una estación pero debe realizar traducciones de direcciones MAC. Su funcionalidad como L2 bridge es limitada, no es transparente. La traducción se realiza mediante una tabla de traslaciones IPv4-to-MAC que mantiene el dispositivo. Para esto debe realizar una inspección del contenido L2 (encabezados L3 (IPv4)). Cuando envía el mensaje reemplaza la dirección origen con la MAC del AP, y almacena la relación (IP origen, MAC origen), cuando vuelve la respuesta cambia la MAC por la almacenada de acuerdo a la dirección IP. Sólo usa tres direcciones y trabaja contra cualquier AP (no es propietario). Para traducir protocolos que no sean IPv4, no funciona adecuadamente y sólo mantiene la MAC de la primera estación que aprendió (single MAC address translation). Todas las tramas recibidas por el AP al enviarse a la red cableada son modificadas reemplazando la MAC por esta única que aprendió. En la figura 1.80 se muestra una captura de la trama.
Figura 1.80 Trama MAC 802.11 en modo pseudobridge