Groups keyboard shortcuts have been updated
Dismiss
See shortcuts

Stations Not Communicating in Mininet-WiFi Mesh Network

79 views
Skip to first unread message

Willy Gires

unread,
Dec 17, 2024, 11:14:33 AM12/17/24
to mininet-wifi-discuss
My name is Willy, and I just installed Mininet-WiFi to emulate an SDNWM. I navigated to the examples/meshAP directory to test the example script, but when I run the ping test, the APs communicate, but the stations do not. Does anyone know what might be wrong? Thanks for your help!

ERROR
mininet-wifi> links
ap1-mp2<->wifiMesh (OK wifiMesh)
ap2-mp2<->wifiMesh (OK wifiMesh)
sta1-wlan0<->wifi (use iw/iwconfig to check connectivity)
sta2-wlan0<->wifi (use iw/iwconfig to check connectivity)
mininet-wifi> sta1 ping sta2
PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.
From 10.0.0.1 icmp_seq=1 Destination Host Unreachable
From 10.0.0.1 icmp_seq=2 Destination Host Unreachable
From 10.0.0.1 icmp_seq=3 Destination Host Unreachable
From 10.0.0.1 icmp_seq=4 Destination Host Unreachable
From 10.0.0.1 icmp_seq=5 Destination Host Unreachable

Ramon Fontes

unread,
Dec 18, 2024, 7:11:38 AM12/18/24
to mininet-wifi-discuss
People usually make 2 mistakes:

1. They don't disable the network manager - I think this might be your case
2. I think your aps are pinging to localhost, since they are running on the root NS.

Willy Gires

unread,
Dec 18, 2024, 7:11:56 PM12/18/24
to mininet-wifi-discuss
And to think I spent time on this... Thank you so much for your help!

Willy Gires

unread,
Dec 19, 2024, 5:00:34 AM12/19/24
to mininet-wifi-discuss

Now I want to activate the BATMAN_ADV protocol on my topologies. I tried to do this, but none of the access points (APs) detect or display their neighbors.
Even after activating it, the ping between nodes still doesn't work.


I have already gone through the previous discussions without finding the solution.

~/mininet-wifi/examples$ sudo python3 meshAP.py
*** Creating nodes
*** Configuring nodes
*** Connecting to wmediumd server /var/run/wmediumd.sock
*** Associating Stations
*** Starting network
*** Running CLI
*** Starting CLI:
mininet-wifi> ap1 batctl ping ap2
Error - mac address of the ping destination could not be resolved and is not a bat-host name: 127.0.0.1
mininet-wifi> ap1 batctl n
[B.A.T.M.A.N. adv 2024.0, MainIF/MAC: ap1-mp2/02:00:00:00:03:00 (bat0/96:f6:5c:6f:e0:d3 BATMAN_IV)]
IF             Neighbor              last-seen
mininet-wifi> ap1 batctl if
ap1-mp2: active
ap2-mp2: active
mininet-wifi> ap1 batctl o
[B.A.T.M.A.N. adv 2024.0, MainIF/MAC: ap1-mp2/02:00:00:00:03:00 (bat0/96:f6:5c:6f:e0:d3 BATMAN_IV)]
   Originator        last-seen (#/255) Nexthop           [outgoingIF]

mininet-wifi> sta1 ping sta2
PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.
From 10.0.0.1 icmp_seq=1 Destination Host Unreachable
From 10.0.0.1 icmp_seq=2 Destination Host Unreachable
From 10.0.0.1 icmp_seq=3 Destination Host Unreachable
^C
--- 10.0.0.2 ping statistics ---
4 packets transmitted, 0 received, +3 errors, 100% packet loss, time 3100ms
pipe 4

Le mercredi 18 décembre 2024 à 13:11:38 UTC+1, ramonre...@gmail.com a écrit :
meshAP.py

Ramon Fontes

unread,
Dec 19, 2024, 5:18:48 AM12/19/24
to Willy Gires, mininet-wifi-discuss
Did you set proto="batman_adv" during the link creation?

--
You received this message because you are subscribed to the Google Groups "mininet-wifi-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-dis...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/mininet-wifi-discuss/8e311394-ee16-4a80-9dec-2e509c8f383bn%40googlegroups.com.

Willy Gires

unread,
Dec 19, 2024, 6:14:28 AM12/19/24
to mininet-wifi-discuss

Yes, you can see this in my script. I saw a discussion about using UserAP and enabling inNamespace, and I’m currently implementing it.

ap1 = net.addAccessPoint('ap1', wlans=2, ssid='ssid1', ip='192.168.1.1/24',mac='00:00:00:00:00:01', position='177.0,139.0,0',cls=UserAP , inNamespace=True)

Now all the access points can communicate, and I am configuring routing so that the stations can communicate. After that, I will try to enable Batman.

Willy Gires

unread,
Dec 20, 2024, 4:48:04 AM12/20/24
to mininet-wifi-discuss
M Ramon, I want to enable batman-adv on my network, but when I proceed with this method, the ping no longer works in the network, and batman does not detect any nodes.


mininet-wifi> ap2 batctl if
ap1-mp2: active
ap2-mp2: active
mininet-wifi> ap2 batctl o

[B.A.T.M.A.N. adv 2024.0, MainIF/MAC: ap1-mp2/02:00:00:00:03:00 (bat0/96:f6:5c:6f:e0:d3 BATMAN_IV)]
   Originator        last-seen (#/255) Nexthop           [outgoingIF]
mininet-wifi> ap2 batctl n

[B.A.T.M.A.N. adv 2024.0, MainIF/MAC: ap1-mp2/02:00:00:00:03:00 (bat0/96:f6:5c:6f:e0:d3 BATMAN_IV)]
IF             Neighbor              last-seen
mininet-wifi> sta1 ping sta2
PING 192.168.1.12 (192.168.1.12) 56(84) bytes of data.
^C
--- 192.168.1.12 ping statistics ---
2 packets transmitted, 0 received, 100% packet loss, time 1059ms

mininet-wifi> ap1 ping batctl ap2
ping: batctl: Échec temporaire dans la résolution du nom
mininet-wifi>


meshAP.py

Ramon Fontes

unread,
Dec 20, 2024, 6:46:25 AM12/20/24
to Willy Gires, mininet-wifi-discuss
Firstly, please make sure you have a signed batman-adv module. You can confirm this with "sudo modprobe batman-adv".
Secondly, this won't work with OVS cause APs are running on root NS. You have to use BOFUSS instead.

Ramon Fontes

unread,
Dec 20, 2024, 6:49:20 AM12/20/24
to mininet-wifi-discuss
Observe that batman-adv creates only one bat0 interface for both ap1 and ap2 because they are running on root NS.

ap1-mp2: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 02:00:00:00:03:00  txqueuelen 1000  (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

ap1-wlan1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 02:00:00:00:02:00  txqueuelen 1000  (Ethernet)
        RX packets 17  bytes 1214 (1.2 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 17  bytes 1520 (1.5 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ap2-mp2: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 02:00:00:00:05:00  txqueuelen 1000  (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

ap2-wlan1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 02:00:00:00:04:00  txqueuelen 1000  (Ethernet)
        RX packets 11  bytes 962 (962.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 11  bytes 1160 (1.1 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

bat0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.123.1  netmask 255.255.255.0  broadcast 0.0.0.0
        inet6 fe80::64c6:e9ff:fec6:37c5  prefixlen 64  scopeid 0x20<link>
        ether 66:c6:e9:c6:37:c5  txqueuelen 1000  (Ethernet)
        RX packets 11  bytes 462 (462.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1  bytes 90 (90.0 B)
        TX errors 0  dropped 53 overruns 0  carrier 0  collisions 0

The most appropriate way is: create a bat0 interface for every AP and this is only possible with BOFUSS switches/aps.

Ramon Fontes

unread,
Dec 23, 2024, 6:53:53 PM12/23/24
to Willy Gires, mininet-wifi-discuss
Did you install BOFUSS??

On Mon, Dec 23, 2024, 19:47 Willy Gires <giresw...@gmail.com> wrote:
Mr. Ramon, I used the script examples/userap_managed_mode.py, in which I added stations and tried to configure the routes, but the ping between two stations on different APs remains impossible. Could you please take a look at my script and help me debug it? I would like to build a mesh network between the APs, and the stations on different APs should communicate through this network.

--
You received this message because you are subscribed to the Google Groups "mininet-wifi-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-dis...@googlegroups.com.

Willy Gires

unread,
Dec 23, 2024, 6:55:04 PM12/23/24
to Ramon Fontes, mininet-wifi-discuss
Mr. Ramon, I used the script examples/userap_managed_mode.py, in which I added stations and tried to configure the routes, but the ping between two stations on different APs remains impossible. Could you please take a look at my script and help me debug it? I would like to build a mesh network between the APs, and the stations on different APs should communicate through this network.

Le ven. 20 déc. 2024 à 12:49, Ramon Fontes <ramonre...@gmail.com> a écrit :
--
You received this message because you are subscribed to the Google Groups "mininet-wifi-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mininet-wifi-dis...@googlegroups.com.
userap_managed_mode.py

Ramon Fontes

unread,
Dec 24, 2024, 6:10:57 AM12/24/24
to Willy Gires, mininet-wifi-discuss
Please ensure that the installation was completed successfully. 

On Tue, Dec 24, 2024, 07:49 Willy Gires <giresw...@gmail.com> wrote:

I installed it using the command sudo util/install.sh -3f.


I must admit that I didn't notice any difference between before and after the installation.


Willy Gires

unread,
Dec 24, 2024, 6:11:02 AM12/24/24
to Ramon Fontes, mininet-wifi-discuss

I installed it using the command sudo util/install.sh -3f.


I must admit that I didn't notice any difference between before and after the installation.



Willy Gires

unread,
Dec 24, 2024, 8:57:49 AM12/24/24
to mininet-wifi-discuss

Could you please check my script, or do you have an operational environment to test it?

Willy Gires

unread,
Dec 24, 2024, 8:57:54 AM12/24/24
to mininet-wifi-discuss
willy@willy-pc:~/mininet-wifi$ sudo util/install.sh -3f
[sudo] Mot de passe de willy :
Detected Linux distribution: Ubuntu 22.04 jammy amd64
Ubuntu
sys.version_info(major=3, minor=10, micro=12, releaselevel='final', serial=0)
Detected Python (python) version 3
Installing OpenFlow 1.3 soft switch implementation...
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
Lecture des informations d'état... Fait      
Note : sélection de « git » au lieu de « git-core »
autoconf est déjà la version la plus récente (2.71-2).
automake est déjà la version la plus récente (1:1.16.5-1.3).
autotools-dev est déjà la version la plus récente (20220109.1).
bison est déjà la version la plus récente (2:3.8.2+dfsg-1build1).
flex est déjà la version la plus récente (2.6.4-8build2).
g++ est déjà la version la plus récente (4:11.2.0-1ubuntu1).
gcc est déjà la version la plus récente (4:11.2.0-1ubuntu1).
libboost-dev est déjà la version la plus récente (1.74.0.3ubuntu7).
libtool est déjà la version la plus récente (2.4.6-15build2).
make est déjà la version la plus récente (4.3-4.1build1).
pkg-config est déjà la version la plus récente (0.29.2-1ubuntu3).
cmake est déjà la version la plus récente (3.22.1-1ubuntu1.22.04.2).
git est déjà la version la plus récente (1:2.34.1-1ubuntu1.11).
libc6-dev est déjà la version la plus récente (2.35-0ubuntu3.8).
libpcap-dev est déjà la version la plus récente (1.10.1-4ubuntu1.22.04.1).
libpcre3-dev est déjà la version la plus récente (2:8.39-13ubuntu0.22.04.1).
unzip est déjà la version la plus récente (6.0-26ubuntu3.2).
Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
  amd64-microcode intel-microcode iucode-tool linux-image-generic-hwe-22.04 thermald
Veuillez utiliser « sudo apt autoremove » pour les supprimer.
0 mis à jour, 0 nouvellement installés, 0 à enlever et 4 non mis à jour.
util/install.sh: ligne 545: version_le : commande introuvable
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances... Fait
Lecture des informations d'état... Fait      
libxerces-c-dev est déjà la version la plus récente (3.2.3+debian-3ubuntu0.1).
Les paquets suivants ont été installés automatiquement et ne sont plus nécessaires :
  amd64-microcode intel-microcode iucode-tool linux-image-generic-hwe-22.04 thermald
Veuillez utiliser « sudo apt autoremove » pour les supprimer.
0 mis à jour, 0 nouvellement installés, 0 à enlever et 4 non mis à jour.
fatal: le chemin de destination 'netbee' existe déjà et n'est pas un répertoire vide.
willy@willy-pc:~/mininet-wifi$

Ramon Fontes

unread,
Dec 24, 2024, 9:00:26 AM12/24/24
to Willy Gires, mininet-wifi-discuss
Dear Willy,

Please follow the BOFUSS setup and make sure you have it working!

Reply all
Reply to author
Forward
0 new messages