Updated 2026/06/16 Ray Franco, PhD, PE : 2006-2026
To install Wireshark on Debian or the Raspberry Pi OS:
sudo apt update
sudo apt install wireshark
Be sure to add your users to the wireshark group:
sudo gpasswd -a <user_name> wireshark
The easiet way to learn Wireshark is to watch YouTube videos.
To sniff ethernet traffic, you need a hardware TAP, SPAN or Hub.
The monitoring computer can introduce unwanted traffic on the network that you do not want to capture in your scans.
I strongly recommend implementing #5.
If using a laptop with a USB-to-Ethernet adapter, if your laptop goes to sleep, Wireshark will stop scanning. The following worked on my Apple Macbook Air M2 running Fedora Asahi Remix:
sudo systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target
For setting it up and to change settings, the Netgear GS105Ev2 has a built-in http web server. Its default address is 192.168.0.239.
If you connected one of the ports to a network with a DHCP server (router) then the DHCP server assigned it a new address. This occurs because the switch's DHCP Mode is set to enabled by default. Netgear does provide a software tool to help you find the new address, but I do think they made the right choice here.
| IP Address: | 192.168.0.239 |
| Subnet Mask: | 255.255.255.0 |
| Gateway: | 192.168.0.254 |
For Microsoft Windows Universal PnP (UPnP) compatibility, the interface's http web server is being advertised via the Simple Service Discovery Protocol (SSDP). To prevent this traffic:
To Reset the Switch:
The Netgear GS305E on paper looks like an upgraded versin of the GS105V2. However, I ordered it's brother the GS308Ev4. It has a Realtek chip in it and it used the Realtek protocol to make a more ecomomical VLAN switch. Hence, you will see a lot of Realtek protocol on your network. Thus, you are not monitoring the network as it was before. This is probably the reason that the GS305E cost ($19) half of what the GS105Ev2 cost ($45).
Before I discovered this, I search the Internet for differences in the GS305E and the GS105Ev2. I found several articals, but not a one of them mention the Realtek protocol.
To observe background traffic, a test network was constructed.
Internet
|
|
--------------------------------------------------------------
| |
| Dlink Router |
| |
--------------------------------------------------------------
|
|
---------------------------------
|
|
|
| --------------------------------------------------------------
| | Netgear Switch | |
| | | VLAN 5 |
| | VLAN 1 | |
| | Monitor | Mirror |
| | 1 2 3 4 | 5 |
| --------------------------------------------------------------
| | | | | |
| | | | | |
--------- | | ------------ ------------
| | | usb-to-eth | | usb-to-eth |
| | ------------ ------------
| | | |
--------- --------- -------- -----------
| HP G6 | | RPi 5b | | Apple | | Wireshark |
| Debian | | RPi OS | | Fedora | | HP Debian |
--------- --------- -------- -----------
| Mfr. | type | OS | Hostname | MAC | IP |
|---|---|---|---|---|---|
| Dlink | Router | 00:24:01:6a:23:2c | 192.168.5.1 | ||
| Netgear | Switch | 28:94:01:73:40:ac | 192.168.0.239 | ||
| HP EleteDesk G6 | PC | Debian 13 | 72 | 7c:57:58:21:d8:7f | 192.168.5.72 |
| RPi 5B | SBC | Raspberry Pi OS 13 | 52 | d8:3a:dd:a0:71:e3 | 192.168.5.52 |
| Apple | Macbook Air M2 | Fedora Asahi Remix 44 | 88 | f8:e4:3b:5d:38:41 | 192.168.5.88 |
| Mfr. | type | OS | MAC | IP |
|---|---|---|---|---|
| HP EleteDesk G6 | PC | Debian 13 | 8c:ae:4c:dd:f0:f1 | 192.168.0.78 |
 
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | HP_21:d8:7f | Broadcast | Who has 192.168.5.72? (APR Probe) |
| arp | HP_21:d8:7f | Broadcast | Who has 192.168.5.72? (APR Probe) |
| arp | HP_21:d8:7f | Broadcast | Who has 192.168.5.72? (APR Probe) |
| arp | HP_21:d8:7f | Broadcast | ARP Announcement for 192.168.5.72 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | RaspberryPiT_a0:71:e3 | Broadcast | Who has 192.168.5.52? (APR Probe) |
| arp | RaspberryPiT_a0:71:e3 | Broadcast | Who has 192.168.5.52? (APR Probe) |
| arp | RaspberryPiT_a0:71:e3 | Broadcast | Who has 192.168.5.52? (APR Probe) |
| arp | RaspberryPiT_a0:71:e3 | Broadcast | ARP Announcement for 192.168.5.52 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | ASIXElectron_5d:38:41 | Broadcast | Who has 192.168.5.88? (APR Probe) |
| arp | ASIXElectron_5d:38:41 | Broadcast | Who has 192.168.5.88? (APR Probe) |
| arp | ASIXElectron_5d:38:41 | Broadcast | Who has 192.168.5.88? (APR Probe) |
| arp | ASIXElectron_5d:38:41 | Broadcast | Who has 192.168.5.1 Tell 192.168.5.88 |
| arp | ASIXElectron_5d:38:41 | Broadcast | ARP Announcement for 192.168.5.88 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | Dlink_6a:23.2c | Broadcast | Who has 192.168.5.72 tell 192.168.5.1 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | HP_21:d8:7f | Dlink_6a:23.2c | 192.168.5.72 is at 7c:57:58:21:d8:7f |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | Dlink_6a:23.2c | Broadcast | Who has 192.168.5.52 tell 192.168.5.1 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | RaspberryPiT_a0:71:e3 | Dlink_6a:23.2c | 192.168.5.52 is at d8:3a:dd:a0:71:e3 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | Dlink_6a:23.2c | Broadcast | Who has 192.168.5.88 tell 192.168.5.1 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | ASIXElectron_5d:38:41 | Dlink_6a:23.2c | 192.168.5.52 is at f8:e4:3b:5d:38:41 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | HP_21:d8:7f | Dlink_6a:23.2c | Who has 192.168.5.1 Tell 192.168.5.72 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | Dlink_6a:23.2c | HP_21:d8:7f | 192.168.5.1 is at 00:24:01:6a:23:2c |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | RaspberryPiT_a0:71:e3 | Dlink_6a:23.2c | Who has 192.168.5.1 Tell 192.168.5.52 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | Dlink_6a:23.2c | RaspberryPiT_a0:71:e3 | 192.168.5.1 is at 00:24:01:6a:23:2c |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | ASIXElectron_5d:38:41 | Dlink_6a:23.2c | Who has 192.168.5.1 Tell 192.168.5.88 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| arp | Dlink_6a:23.2c | ASIXElectron_5d:38.41 | 192.168.5.1 is at 00:24:01:6a:23:2c |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| NTP | 192.168.5.52 | 155.248.196.28 | Version 4, client |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| NTP | 155.248.196.28 | 192.168.5.52 | Version 4, server |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| NTP | 192.168.5.52 | 155.248.196.28 | Version 4, client |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| NTP | 155.248.196.28 | 192.168.5.52 | Version 4, server |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| NTP | 192.168.5.88 | 172.104.209,204 | Version 4, client |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| NTP | 172.194.209.204 | 192.168.5.88 | Version 4, server |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| NTP | 192.168.5.88 | 74.6.168.72 | Version 4, client |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| NTP | 74.6.168.72 | 192.168.5.88 | Version 4, server |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| NTP | 192.168.5.88 | 72.14.182.49 | Version 4, client |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| NTP | 72.14.182.49 | 192.168.5.88 | Version 4, server |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| NTP | 192.168.5.88 | 50.218.103.254 | Version 4, client |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| NTP | 50.218.103.254 | 192.168.5.88 | Version 4, server |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.72 | 224.0.0.251 | PTR nmea-0183._tcp.local, PTR _ipps._tcp.local, PTR _ipp._tcp.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.72 | 224.0.0.251 | ANY 72.5.168.192.in-addr.arpa, ANY 72.local, A 192.168.5.72 PTR 72.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.72 | 224.0.0.251 | ANY 72.5.168.192.in-addr.arpa, ANY 72.local, A 192.168.5.72 PTR 72.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.72 | 224.0.0.251 | ANY 72.5.168.192.in-addr.arpa, ANY 72.local, A 192.168.5.72 PTR 72.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.72 | 224.0.0.251 | PTR, cache flush 72.local A, cache flush 192.168.5.72 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.72 | 224.0.0.251 | PTR nmea-0183._tcp.local, PTR _ipps._tcp.local, PTR _ipp._tcp.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.72 | 224.0.0.251 | PTR, cache flush 72.local A, cache flush 192.168.5.72 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.72 | 224.0.0.251 | PTR nmea-0183._tcp.local, PTR _ipps._tcp.local, PTR _ipp._tcp.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.72 | 224.0.0.251 | PTR, cache flush 72.local A, cache flush 192.168.5.72 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.72 | 224.0.0.251 | PTR nmea-0183._tcp.local, PTR _ipps._tcp.local, PTR _ipp._tcp.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.72 | 224.0.0.251 | PTR nmea-0183._tcp.local, PTR _ipps._tcp.local, PTR _ipp._tcp.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.72 | 224.0.0.251 | PTR nmea-0183._tcp.local, PTR _ipps._tcp.local, PTR _ipp._tcp.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.52 | 224.0.0.251 | ANY 52 [d8:3a:dd:a0:71:e3]._workstation._tcp.local, ANY 52.local, ANY 52.6.168.192.in-addr.arpa, A 192.168.5.52 PTR 52.local SRV 0 0 9 52.local TXT |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.52 | 224.0.0.251 | PTR _workstation._tcp.local, PTR 52 [d8:3a:dd:a0:71:e3]._workstation._tcp.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.52 | 224.0.0.251 | ANY 52 [d8:3a:dd:a0:71:e3]._workstation._tcp.local, ANY 52.local, ANY 52.6.168.192.in-addr.arpa, A 192.168.5.52 PTR 52.local SRV 0 0 9 52.local TXT |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.52 | 224.0.0.251 | ANY 52 [d8:3a:dd:a0:71:e3]._workstation._tcp.local, ANY 52.local, ANY 52.6.168.192.in-addr.arpa, A 192.168.5.52 PTR 52.local SRV 0 0 9 52.local TXT |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.52 | 224.0.0.251 | TXT, cache flush A, cache flush 192.168.5.52 PTR, cache flush 52.local SRV, cache flush 0 0 9 52.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.52 | 224.0.0.251 | PTR _workstation._tcp.local PTR 52 [d8:3a:dd:a0:71:e3]._workstation._tcp.local TXT, cache flush SRV, cache flush 0 0 0 9 52.local A, cache flush 192.168.5.52 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.52 | 224.0.0.251 | TXT, cache flush A, cache flush 192.168.5.52 PTR, cache flush 52.local SRV, cache flush 0 0 9 52.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.52 | 224.0.0.251 | PTR _workstation._tcp.local PTR 52 [d8:3a:dd:a0:71:e3]._workstation._tcp.local TXT, cache flush SRV, cache flush 0 0 0 9 52.local A, cache flush 192.168.5.52 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.52 | 224.0.0.251 | TXT, cache flush A, cache flush 192.168.5.52 PTR, cache flush 52.local SRV, cache flush 0 0 9 52.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.88 | 224.0.0.251 | ANY 88.5.168.192.in-addr.arpa |
| mDNS | 192.168.5.88 | 224.0.0.251 | ANY 88.5.168.192.in-addr.arpa |
| mDNS | 192.168.5.88 | 224.0.0.251 | ANY 88.5.168.192.in-addr.arpa |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.88 | 224.0.0.251 | PTR _ipp._tcp.local ipps_.tcp.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.88 | 224.0.0.251 | PTR cache flush fedora.local A, 192.168.5.88 |
| mDNS | 192.168.5.88 | 224.0.0.251 | PTR cache flush fedora.local A, 192.168.5.88 |
| mDNS | 192.168.5.88 | 224.0.0.251 | PTR cache flush fedora.local A, 192.168.5.88 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.88 | 224.0.0.251 | PTR _nmea-0183._tcp.local, _raop._tcp.local |
| mDNS | 192.168.5.88 | 224.0.0.251 | PTR _nmea-0183._tcp.local, _raop._tcp.local |
| mDNS | 192.168.5.88 | 224.0.0.251 | PTR _nmea-0183._tcp.local, _raop._tcp.local |
| mDNS | 192.168.5.88 | 224.0.0.251 | PTR _nmea-0183._tcp.local, _raop._tcp.local |
| mDNS | 192.168.5.88 | 224.0.0.251 | PTR _nmea-0183._tcp.local, _raop._tcp.local |
| mDNS | 192.168.5.88 | 224.0.0.251 | PTR _nmea-0183._tcp.local, _raop._tcp.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.72 | 224.0.0.251 | PTR _ipp._tcp.local, PTR _ipps_.tcp.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.5.88 | 224.0.0.251 | PTR _raop._tcp.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| SSDP | 192.168.5.1 | 239.255.255.250 | NOTIFY * HTTP/1.1 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| SSDP | 192.168.0.239 | 239.255.255.250 | NOTIFY * HTTP/1.1 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| NBNS | 192.168.5.1 | 255.255.255.255 | Registration NB DLINKROUTER<00> |
| NBNS | 192.168.5.1 | 255.255.255.255 | Registration NB WORKGROUP<00> |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| IGMPv3 | 192.168.5.88 | 224.0.0.22 | Membership Report / Join group 224.0.0.251 & 244.0.0.252 for any sources |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| IGMPv3 | 192.168.5.88 | 224.0.0.22 | Membership Report / Leave group 224.0.0.251 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| IGMPv3 | 192.168.5.88 | 224.0.0.22 | Membership Report / Leave group 224.0.0.251 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| IGMPv3 | 192.168.5.88 | 224.0.0.22 | Membership Report / Leave group 224.0.0.251 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| IGMPv3 | 192.168.5.88 | 224.0.0.22 | Membership Report / Leave group 224.0.0.251 |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.0.78 | 224.0.0.251 | PTR _nmea-0183._tcp.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.0.78 | 224.0.0.251 | PTR _ipp._tcp.local, PTR _ipps_.tcp.local |
| Protocol | Source | Destination | Description |
|---|---|---|---|
| mDNS | 192.168.0.78 | 224.0.0.251 | PTR _ftp, _nfs, _afpovertcp, _smb, _sftp-ssh, _webdav, _webdavs |
Wants to call Fedora every 5 minutes - captive portal
At boot, it can see the my printers HP 1320 and Dell C1760
_raop 32,64,128...2048 seconds
Not a real world case - Not being check on by the Router every minute - investigate why? The Router will start checking every minute after the Macbook Air pings the router once. Not a real world case !!!
Very aggressive NTP - Once a minute and 4 NTP Servers
I once thought that the ARP queries from the router to the host were so that the host use random MAC addresses. However, it looks like Apple's rotation is 2 weeks.
This probably just keeps the switch table in the router updated. If a switch does not receive any traffic from a port within a 5 minute period, it normally flushes the entry in its switch table.
NMEA stands for the National Marine Electronics Association.
I currently believe that the mDNS quires for _NMEA-0183 are looking for hosts on the LAN (.local) that have my GPS location, such as my cell phone.
I might be able to block this with Reference #2.
Debian and Fedora search for the NMEA-0183 service on startup. The Raspberry PI OS does not search for NMEA-0183.
To install:
curl https://fedora-asahi-remix.org/install | sh
To keep it from calling Fedora Project every 5 minutes, see Reference #4.
| subnet mask | CIDR | Works |
|---|---|---|
| 255.255.0.0 | /16 | Yes |
| 255.255.128.0 | /17 | Yes |
| 255.255.240.0 | /20 | Yes |
| 255.255.248.0 | /21 | Yes |
| 255.255.252.0 | /22 | Yes |
| 255.255.254.0 | /23 | No |
To change the subnet mask of the Dlink rounter:
"Setup" Tab -> "Network Settings" (left Column) -> "Router Setting"
Internet
|
|
-------------------------------------------------------------
| Dlink Router Dir-655 (Not VLAN Aware) |
| |
| 1 2 3 4 |
-------------------------------------------------------------
| |
----------------- ---------------------------
| |
| Netgear Switch GS105Ev2 |
| ------------------------------------------------------------ |
| | VLAN 1 | VLAN 2 | VLAN 3 | |
| | | | | |
| | Monitor | Mirror | | |
| | 1 2 | 3 | 4 5 | |
| ------------------------------------------------------------ |
| | | | | | |
--------- | | | --------
| | |
-------------- -------------- --------------
| HP G6 | | HP G9 | | RPi 5 |
| Debian | | Debian 13 | | RPi OS 13 |
| 192.168.5.72 | | 192.168.0.72 | | 192.168.6.52 |
-------------- | Wireshark | --------------
--------------
Monitor ping from 192.168.5.72 to 192.168.6.52
This does not work! Loop Detected!
Explain the loop and that it also exit on Router that are VLAN aware
When a switch with a VLAN Ports recieved a Frame without a VLAN tag, the default is to forward it to all of the VLANs, but you can control where the frame is fowarded with PVIDs.
Internet
|
|
-------------------------------------------------------------
| Router: Dlink Dir-655 (NOT VLAN Aware) |
| |
| 1 2 3 4 |
-------------------------------------------------------------
| |
----------------- ---------------------------
| |
| Netgear Switch GS105Ev2 |
| ------------------------------------------------------------ |
| | VLAN 10 | VLAN 1 | VLAN 30 | |
| | | | | |
| | Monitor | Mirror | | |
| | 1 2 | 3 | 4 5 | |
| ------------------------------------------------------------ |
| | | | | | |
--------- | | | --------
| | |
-------------- -------------- --------------
| HP G6 | | HP G9 | | RPi 5 |
| Debian | | Debian 13 | | RPi OS 13 |
| 192.168.5.72 | | 192.168.0.72 | | 192.168.6.52 |
-------------- | Wireshark | --------------
--------------
| VLAN | Ports |
| #1 | 3 |
| #10 | 1,2 |
| #30 | 4,5 |
| Port | PVID |
| #1 | 10 |
| #2 | 10 |
| #3 | 1 |
| #4 | 30 |
| #5 | 30 |
I also changed the Management VLAN ID to 10.
You can break the feedback loop via PVID's! Both hosts (192.168.5.72 & 192.168.6.52) can access the internet, and ping each other. With the Netgear GS105Ev2 switch, you can monitor ports 1, 2, 4 or 5 or any combination of 1, 2, 4 and 5.
You can also use a 2nd ethernet switch to break the feedback loop. This was my first solution.
Internet
|
|
-------------------------------------------------------------
| Dlink Router Dir-655 |
| |
| 1 2 3 4 |
-------------------------------------------------------------
| |
| |
----------------- ----------------------------------------------------
| |
| |
| 1st Netgear Switch GS105Ev2 2nd Netgear Switch GS105Ev2 |
| ------------------------------------------- -------------------------------------- |
| | VLAN 1 | VLAN 2 | VLAN 3 | | VLAN 1 | VLAN 2 | VLAN 3 | |
| | | | | | | | | |
| | Monitor | Mirror | | | | | | |
| | 1 2 | 3 | 4 5 | | 1 2 | 3 | 4 5 | |
| ------------------------------------------- -------------------------------------- |
| | | | | | |
| | | | | | |
--------- | | | --------
| | |
| | |
| | |
-------------- --------------- --------------
| HP G6 | | HP G9 | | RPi 5 |
| Debian | | Debian 13 | | RPi OS 13 |
| 192.168.5.72 | | 192.168.0.78 | | 192.168.6.52 |
-------------- | Wireshark | --------------
---------------
Monitor ping from 192.168.5.72 to 192.168.6.52
This Works! i No Loop Dected.
With a VLAN aware router, ethernet ports on a managed switch can be members of more than one VLAN. See the VLAN table below.
To assign the ports to VLANs on the Netgear Switch GS105Ev2:
VLAN -> Port-Based > Advanced
Internet
|
|
------------------------------------------------------------
| Router: TP-Link BE6400 (VLAN Aware) |
| |
| 1 2 3 4 |
------------------------------------------------------------
|
-----------------
| Netgear Switch GS105Ev2 (192.168.0.239)
| ------------------------------------------------------------
| | | | | | |
| | Monitor | | | | Mirror |
| | 1 | 2 | 3 | 4 | 5 |
| ------------------------------------------------------------
| | | | |
--------- | | |
| | |
-------------- -------------- ---------------
| HP G6 | | RPi 5 9 | | HP G9 |
| Debian | | RPi OS 13 | | Debian 13 |
| 192.168.5.72 | | 192.168.6.53 | | 192.168.0.78 |
-------------- -------------- | Wireshark |
--------------
| VLAN | Ports |
| #1 | 1,2 |
| #2 | 1,3 |
| #3 | 2,3 |
This works with and without VLAN #3. Both hosts (192.168.5.72 & 192.168.6.52) can access the internet, and ping each other. With the Netgear GS105Ev2 switch, you can monitor ports 1, 2 or 3 or any combination of 1, 2 and 3.
A VLAN aware router does not solve everything. The configuration below has a positive feedback loop because there are no VLAN tags even if you are using the advanced setup with 802.1Q.
When a managed switch with VLANs recieved a broadcast frame that does not have VLAN tags, it will forward the frame to ALL the VLANs and/or ports in the switch. This is what completes the positive feedback loop.
I believe that a monitored switch only inserts a VLAN tag in a frame if it knows that the recieving device is VLAN aware. Therefore, to capture VLAN tags, the interface on the host running Wireshark has to be VLAN aware.
Unfortunately, as of June 2026, Wireshark's documentation on how to setup the interface to be VLAN aware is out-of-date. It uses "vconfig", which is depricated. However, the interface can be setup to be VLAN aware with the "Network Manager"[1].
I replicated the network without VLAN 33 in my home lab. I did not put each VLAN in a seperate subnet. See diagram and tables below:
--------------
| Debian OS 13 |
| 192.168.0.78 |
| Wireshark |
-------------
Trunk / Monitored Mirror |
---------------------------------------- |
| | |
| | |
-------------------------------------------- ---------------------------------------
| VLAN 10 | VLAN 20 | | VLAN 3 | | VLAN 1 | VLAN 2 | VLAN 3 | |
| | | | | | | | | |
| 1 | 2 | 3 4 5 | | 1 2 3 4 5 |
-------------------------------------------- ----------------------------------------
| | | |
| | | |
| | | |
-------------- --------------- -------------- --------------
| HP G6 | | RPi 5 | | RPi 5 | | RPi 5 |
| Debian | | RPi OS 13 | | RPi OS 13 | | RPi OS 13 |
| 192.168.5.72 | | 192.168.5.52 | | 192.168.5.56 | | 192.168.5.54 |
-------------- --------------- -------------- --------------
| Port | Tagged/Untagged | PVID |
|---|---|---|
| 1 | U | 10 |
| 3 | T | 3 |
| Port | Tagged/Untagged | PVID |
|---|---|---|
| 2 | U | 20 |
| 3 | T | 3 |
| Access Pt | Trunk |
|---|---|
| Untagged | Tagged |
| Belong to one VLAN | Belongs to Many VLANS |
| The PVID is the port | The PVID is the native VLAN |
One of things that I learned, was that all four of the PCs were sending out arp request about once a second for the gateway (who has 192.168.5.1 tell 192.168.5.xx).
My temporary fix was to enable wifi on each of the PC's, and to move the gateway to the subnet of the wifi network. This reduced the traffic on the trunk to almost nothing.
The example in Figure 1, allows both hosts to access the internet, but
it does not allow the two hosts to communicate with each other.
Port # 1 2 3
4 5
VLAN 1 U U U
U U
VLAN 20 U U
VLAN 30 U U
PVID 1 20 30
1 1
Port Tagged/Untagged PVID
1 U 1
2 U 2
Port Tagged/Untagged PVID
1 U 1
3 U 3
Port Tagged/Untagged PVID
1 U 1
2 U 2
3 U 3
4 U 1
5 U 1
Port 1 is untagged, yet it is a member of all three VLANs. This seems to violate the rule that an untagged port can only be a member of one VLAN.
The example in Figure 2, allows:
Note, there are differences in this Example 2, and the Example 2 in reference [2].
There is nothing in the Netgear GS105Ev2 manual to help you in setting up VLANs. It is believed that Netgear intended for VLAN 1 to be the PVID of the port connected to a router and/or a trunk. A router needs access to all ports.
| Port # | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| VLAN 1 | U | U | U | T | U |
| PVID | 1 |
| Port # | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| VLAN 1 | U | U | U | T | U |
| PVID | 1 | 1 |
| Port # | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| VLAN 1 | U | U | U | T | U |
| VLAN 20 | U | U | T | ||
| VLAN 30 | U | U | T | ||
| PVID | 1 | 20 | 30 | 1 | 1 |
| Port # | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| VLAN 1 | U | U | U | T | U |
| VLAN 20 | U | T | U | ||
| VLAN 30 | U | T | U | ||
| PVID | 1 | 20 | 30 | 1 | 1 |
Note, VLAN 20 in Switch A is different that VLAN 20 in Switch B; ditto for VLAN 30 .
On Switch B, why must port 5 be included in VLANs 20 and 30? Everything originating from Port 2 will have VLAN tag 20 on it. So, for Port 2 to communicate with Port 5, Ports 2 and 5 must be in the same VLAN. Similarly, for Port 3 to communicate with Port 5, they must be in the same VLAN.
Native VLANS - To identify the destination VLAN, packets on a trunk are tagged. However, it is permissable for ONE destination VLAN to not use a tag. The untagged VLAN is referred to as the Native VLAN. In the above network, if a host connected to Switch A pings the router, the ping request has a VLAN tag, but the ping response does not have a tag because it is using the native VLAN (VLAN 1).
Symmetrical and Asymmetrical VLANs
the Wireshark Host pings the the router, neither the ping request or the ping response have a VLAN Tag. Hence on Switch A, the Native VLAN is VLAN 1, and on Switch B, the Native VLAN is VLAN 1. Native VLANS are per switch per trunk. It is important that the Native VLANs on each trunk match. Cisco switches allow you to assign the native VLAN. The Netgear Switch, GS105Ev2, does not allow you to select which VLAN is the Native VLAN.?i?????An Asymmetric VLAN is a configuration where traffic between two devices uses different VLAN Tags (ID's) for each direction of the communications. This is an asymemetic network. You can see this with Wiresharp by pinging the router with one of the hosts in Switch A. The ping request has a VLAN tag; the ping response from the rounter does not have a VLAN tag because VLAN 1 is the Native VLAN.
If for some reason, you want to restrick the Wireshark Host to commicating only with the web interfaces of Switch A and Switch B and the router, the tables below will do just that.
| Port # | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| VLAN 1 | U | U | U | T | U |
| VLAN 20 | U | T | |||
| VLAN 30 | U | T | |||
| PVID | 1 | 20 | 30 | 1 | 1 |
| Port # | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| VLAN 1 | U | U | U | T | U |
| VLAN 20 | U | T | U | ||
| VLAN 30 | U | T | U | ||
| PVID | 1 | 20 | 30 | 1 | 1 |
Below is a set of Alternate VLAN tables for the same network. When Host A1 pings the rounter it uses the VLAN Tag 2; when the rounter responds, it uses VLAN Tag 4. Similarly, when Host B1 pings the rounter, it uses the VLAN Tag 3; when the rounter responds, it uses VLAN Tag 4. Now, if the Wireshark Host pings Switch B, neither the ping request nor ping response use a VLAN Tag. Hence, this is the Native VLAN, and in this case it does not correspond to a defined VLAN.
| Port # | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| VLAN 1 | U | T | |||
| VLAN 2 | U | T | |||
| VLAN 3 | U | T | |||
| VLAN 4 | U | U | T | ||
| VLAN 5 | U | ||||
| PVID | 1 | 2 | 3 | 4 | 5 |
| Port # | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| VLAN 1 | U | T | |||
| VLAN 2 | U | U | T | ||
| VLAN 3 | U | U | T | ||
| VLAN 4 | U | U | U | T | |
| VLAN 5 | U | ||||
| PVID | 4 | 2 | 3 | 4 | 5 |
| Port # | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| VLAN 1 | U | U | U | T | U |
| VLAN 20 | U | U | T | ||
| VLAN 30 | U | U | T | ||
| VLAN 88 | U | U | U | T | |
| PVID | 1 | 20 | 30 | 1 | 1 |
| Port # | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| VLAN 1 | U | U | U | T | U |
| VLAN 20 | U | T | U | ||
| VLAN 30 | U | T | U | ||
| VLAN 88 | T | U | |||
| PVID | 1 | 20 | 30 | 1 | 88 |
On Switch B, why must port 1 be included in VLANs 2 and 3? Everything originating from Port 2 will have VLAN tag 2 on it. So, for Port 2 to communicate with Port 1, Ports 1 and 2 must be in the same VLAN. Similarly, for Port 3 to communicate with Port 1, they must be in the same VLAN.
An asymmetric VLAN is a configuration where traffic between two devices uses different VLAN Tags (ID's) for each direction of the communications. This is an asymemetic network. You can see this with Wiresharp by pinging the router with one of the host in switch. The ping request has a VLAN tag; the ping response from the rounter does not have a VLAN tag.
Because the gateway (router) is connected to this network, the PCs are not constantly sending arp requests looking for their gateway. This was a problem in a previous example where there was no connection to a gateway (router). The PCs flooded the LAN with arp request looking thier gateways.
An asymmetric VLAN is where different VLAN IDs are used for traffic in each direction between devices.
Example 2b is the same as example 2, with the exception that on Switch B, Port 5 is used for the Internet connection, and Port 1 is used as the mirror port to monitor the trunk (Port 4). See the tables below.
When Host-A1 pings the router, the request VLAN tag on the trunk is VLAN 2. However, the return response from the router on the trunk is tagged VLAN 5. Hence, this is an asymmetric VLAN.
The Native VLAN for the trunk is still VLAN 1, but the default VLAN for the trunk is now VLAN 5.
| VLAN 2 | VAN 3 | ||||
|---|---|---|---|---|---|
| Port | Tagged/Untagged | PVID | Port | Tagged/Untagged | PVID |
| 2 | U | 2 | 3 | U | 3 |
| 4 | T | 5 | 4 | T | 5 |
| VLAN 2 | VAN 3 | ||||
|---|---|---|---|---|---|
| Port | Tagged/Untagged | PVID | Port | Tagged/Untagged | PVID |
| 2 | U | 2 | 3 | U | 3 |
| 4 | T | 5 | 4 | T | 5 |
| 5 | U | 5 | 5 | U | 5 |
| VLAN 5 | ||||
|---|---|---|---|---|
| Port | Tagged/Untagged | PVID | ||
| 2 | U | 2 | ||
| 3 | U | 3 | ||
| 4 | T | 5 | ||
| 5 | U | 5 | ||
| VLAN 1 | ||||
|---|---|---|---|---|
| Port | Tagged/Untagged | PVID | ||
| 1 | U | 1 | ||
Example 2c is the same as example 2c, with the exception that a shared common printer has been added to Switch B, Port 1. See tables below:
| VLAN 2 | VAN 3 | ||||
|---|---|---|---|---|---|
| Port | Tagged/Untagged | PVID | Port | Tagged/Untagged | PVID |
| 2 | U | 2 | 3 | U | 3 |
| 4 | T | 5 | 4 | T | 5 |
| VLAN 2 | VAN 3 | ||||
|---|---|---|---|---|---|
| Port | Tagged/Untagged | PVID | Port | Tagged/Untagged | PVID |
| 2 | U | 2 | 3 | U | 3 |
| 4 | T | 5 | 4 | T | 5 |
| 5 | U | 5 | 5 | U | 5 |
| 1 | U | 1 | 1 | U | 1 |
| VLAN 5 | ||
|---|---|---|
| Port | Tagged/Untagged | PVID |
| 2 | U | 2 |
| 3 | U | 3 |
| 4 | T | 5 |
| 5 | U | 5 |
| VLAN 1 | ||
|---|---|---|
| Port | Tagged/Untagged | PVID |
| 1 | U | 1 |
| 2 | U | 2 |
| 3 | U | 3 |
| 4 | T | 5 |
Example 2C is the same as example 2B, with the exception that a shared common printer has been added to Switch B, Port 1.
| Shared - VLAN 1 | Group A - VLAN 2 | Group B - VLAN 3 |
|---|---|---|
| Router | Host A1 | Host B1 |
| Printer | Host A2 | Host B2 |
Port 1, on switch A, is running Wiresharki and monitoring the trunk between the two switches. It can also connect to the web interfaces of the two switch (192.168.5.239 and 240) and to the Internet. However, it can not connect to Hosts in Group A (VLAN 2) nor Group B (VLAN 3).
All IP addresses are in subnet 192.168.5.0/24. In Figure 2.C, the blue numbers are the last octlet of the IP address.
This is an asymmetrical VLAN network. If Host A1 pings the printer, the VLAN tag on the request is VLAN 2. There is no tag on the response; it is using VLAN 1, which is the "Native" VLAN. Ditto, if Host A1 pings the router; the reqest uses the tag VAN 2, and reponse uses the native VLAN.
The purpose of native VLANs is for backward comptablity with devices that are not capable of using VLANs. These are often referred to as non-VLAN aware devices or legency devices. A better name might be non-enterprise-grade devices.
See tables below:
The Network Printer and Router can communicate with each other!
| VLAN 1 | ||
|---|---|---|
| Port | Tagged/Untagged | PVID |
| 1 | U | 1 |
| 2 | U | 2 |
| 3 | U | 3 |
| 4 | T | 1 |
| 5 | U | 1 |
| VLAN 2 | ||
|---|---|---|
| Port | Tagged/Untagged | PVID |
| 2 | U | 2 |
| 4 | T | 1 |
| VLAN 3 | ||
|---|---|---|
| Port | Tagged/Untagged | PVID |
| 3 | U | 3 |
| 4 | T | 1 |
| VLAN 1 | ||
|---|---|---|
| Port | Tagged/Untagged | PVID |
| 1 | U | 1 |
| 2 | U | 2 |
| 3 | U | 3 |
| 4 | T | 1 |
| 5 | U | 1 |
| VLAN 2 | ||
|---|---|---|
| Port | Tagged/Untagged | PVID |
| 1 | U | 1 |
| 2 | U | 2 |
| 4 | T | 1 |
| 5 | U | 1 |
| VLAN 3 | ||
|---|---|---|
| Port | Tagged/Untagged | PVID |
| 1 | U | 1 |
| 3 | U | 3 |
| 4 | T | 1 |
| 5 | U | 1 |
| Shared - VLAN 1 | Group A - VLAN 2 | Group B - VLAN 3 |
|---|---|---|
| Router | Host A1 | Host B1 |
| Printer | Host A2 | Host B2 |
Port 1, on switch A, is running Wiresharki and monitoring the trunk between the two switches. It can also connect to the web interfaces of the two switch (192.168.5.239 and 240) and to the Internet. However, it can not connect to Hosts in Group A (VLAN 2) nor Group B (VLAN 3).
All IP addresses are in subnet 192.168.5.0/24. In Figure 2.C, the blue numbers are the last octlet of the IP address.
This is an asymmetrical VLAN network. If Host A1 pings the printer, the VLAN tag on the request is VLAN 2. There is no tag on the response; it is using VLAN 1, which is the "Native" VLAN. Ditto, if Host A1 pings the router; the reqest uses the tag VAN 2, and reponse uses the native VLAN.
The purpose of native VLANs is for backward comptablity with devices that are not capable of using VLANs. These are often referred to as non-VLAN aware devices or legency devices. A better name might be non-enterprise-grade devices.
See tables below:
The Network Printer and Router can communicate with each other!
| Port # | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| VLAN 1 | U | U | U | T | U |
| VLAN 2 | U | T | U | ||
| VLAN 3 | U | T | |||
| PVID | 1 | 2 | 3 | 1 | 2 |
| Port # | 1 | 2 | 3 | 4 | 5 |
|---|---|---|---|---|---|
| VLAN 1 | U | U | U | T | U |
| VLAN 2 | U | U | T | ||
| VLAN 3 | U | U | T | ||
| PVID | 1 | 2 | 3 | 1 | 1 |
Asymmetric VANs allow devices to transmitt packets on one VLAN and receive it on another VLAN.
It is easy to put a wireless interface into monitor mode; however, the Network Manager will immediately change it back to managed mode. To prevent this from occurring, we need to exclude the wireless interface from being managed by the Network Manager, and manage it with Systemd-Networkd:
[device-mac80cc9c81f291-unmanaged]
match-device=mac:80:cc:9c:81:f2:91
managed=0
[Match]
Name=wlan1
Type=wlan
[Network]
DHCP=ipv4
ctrl_interface=/run/wpa_supplicant
ctrl_interface_group=root
update_config=1
country=US
network={
ssid="network-name"
psk="secret-password"
priority=1
}
To put a wireless interface in monitor mode:
sudo ip link set wlan0 down
sudo iw dev wlan0 set type monitor
sudo ip link set wlan0 up
To check the interface is in monitor mode:
iw wlan0 info
Beacon frames anounce essential information about a wireless network:
Beacon frames are typically transmitted every 100 Time Units or evey 102.4 ms - approximatel 10 beacon frames per second.