Is wifi endpoint a hub? - networking

I'm new to networking.I have seen that it's possible to capture packets through wireshark.Having seen it a question arises in my mind.
Is wifi a hub?.I mean,if im able to receive(but ignore by system since those packets aren't intended for me as a client) what another client on the same NAT is receiving doesn't that mean that wifi connection works like a hub since hubs don't filter the destination.
Sorry for the bad way of asking and explaining!!
And thank you in advance!

Wi-Fi (IEEE 802.11) is a set of protocols that use a shared medium (radio waves). Because the medium is shared, much like the old ethernet (IEEE 802.3) 10BASE-2 coax, all hosts on the medium can hear all traffic on the medium. Neither uses a hub.
A hub is something that was created to allow ethernet to use UTP in the same manner that ethernet could use coax cable. Ethernet has multiple standards to allow it to use different media, but many don't have hubs (specific to a medium and some ethernet standards), and neither does Wi-Fi.

Related

Replace direct RS485 to RS485 connection with Ethernet in the middle?

I have a RS-485 device connected via twisted pair to another RS-485 device.
I'd like to bridge the distance via Ethernet, like so:
RS485 > Ethernet > RS485
Is this possible with two RS485 to Ethernet converters?
[RS485 device] to [RS485-Ethernet] via cable to [Ethernet-RS485] to RS485
The RS-485 communication is bi-directional. As in, the master sends and asks for information. I thought of getting two USR-RS232-304 devices, which I'd like to use for this. Would these work for this purpose? What puzzles me is, one seems to be a server, the other client. Will this still allow for bi-directional comms on the RS-485 side?
I did read the manual, and while it describes the general setup of IP config and transmission parameters, I am not sure (or could not deduct from it), whether bidirectional RS485 would work or not.
Any diagrams I have seen show only one of these converters, with the other end being a virtual comport. The devices I have talking to each other are not computers, where I could load a virtual COM port; hence, my query.
Maybe someone has done exactly what I am after and can share.
Looking at https://www.pusr.com/download/M0/USR-TCP232-304-User-Manual_V1.0.3.01.pdf, it should work. I'd suggest speaking to their support staff directly. (this was once (circa 1992) referred to as two "half bridges", setting to 255.255.255.255 would be a "dumb bridge")

Is there a way to broadcast UDP packets with ESP8266 without wifi connection?

My question is regarding an ESP8266 board and the ESP-touch technology.
ESP-touch uses the length field of a UDP package to broadcast wifi ID and PW through a device (like a smartphone) to the chip (like in my case ESP 8266).
I want to turn this around, more specifically:
I want the ESP8266 chip to broadcast UDP packets with some sort of identifier-number in the length field of the UDP packet, without beeing connected to any wifi connection. Then these UDP packets are recieved by an app on a smartphone so the identifier-number can be extracted and used on the smartphone.
I am relatively new to this topic and do not know if this can work.
When I try to find any information online they all say that the first step is to connect the chip to a wifi. But I don't want that. The smartphone and the chip don't know each other and are not connected in any way. So I want this type of "broadcasting" so that the smartphone can recieve the package without really beeing connected to the chip.
I guess there must be some way to make it function like I explained above, but I can't find a way how this can work.
I don't need the chip to send UDP packets explicitely, it can be any type of package. I took UDP packet as an example because there is already the ESP-touch technology which is more or less similar.
The important thing is that the package that I send has a field where I can put some identifier-number in (not encrypted), which can then be recieved by another device like a smartphone where this identifier-number is extracted.
For clarification: I don't need to use ESP touch or anything related to that. I only stated this technology as an example. I just want to achieve the behavior stated above and in the picture! :)
This is an example picture how I want it to work:
No, it's not possible to send any packages without being connected to the network. ESP-touch or TI Smart Config or similar technologies utilize Monitor mode. As the name suggests, in this mode one can listen for packages, but can't send them.
ESPNOW provides data flow between ESP devices without connections via router. It is another feature of the Espressive API. There are tutorials for ESP8266 and ESP32...
https://randomnerdtutorials.com/esp-now-esp8266-nodemcu-arduino-ide/ .. https://www.instructables.com/ESP32-With-ESP-Now-Protocol/

How does the network traffic not intended for my nic even reach my nic?

I was reading that in order to capture traffic for more than just my machine I need to put the nic into promiscuous mode. By default the nic seems to filter out the packets which are not meant for it.
My Question is : How come my nic even receive traffic that is not intended for it? Isn't my router supposed to route packets only to the computer for which it is meant?
Sorry - newbie here and this may be an absolute down votable question that I am asking.
I have heard that in case of wireless networks, the traffic takes multiple paths and the NIC combines these signals to form the original signal. So when a NIC sends something to the gateway it will send multiple signals and some if not all may even be captured by your packet sniffer.
Monitor mode also works like this
The short answer: It depends. :)
Wireshark Wiki: Ethernet capture setup should be of help to get you started.

Writing client-server application in global network

I know, how to write a C# application that works through a local network.
I mean I know, how to make my client-side application access my server-side application in a single local network.
But I wonder: How do such apps, as Skype, TeamViewer, and many other connect via global network?
I apologise, if this question is simple or obvious, but I couldn't find any information about this stuff.
Please, help me, I'll be very grateful. Any information is accepted - articles, plain info, books,and so on...
Question is very wide and I try to do short overview.
Following major difference between LAN (Local Area Network) and WAN (Wide Area Network):
Network quality:
LAN is more or less stable, WAN can be with network issues like:
Packet loss (you need use loss-tolerant transport like TCP or UDP with retransmits or packet loss concealment)
Packet jitter (interpacket intervals may differ a lot from sending part). Most common thing is packets bursts.
Packet reordering
Packet duplication
Network connectivity
WAN is less stable than LAN. So you need properly handle all things like:
Connection stale
Connection loss
Errors in the middle of the connection (if you use UDP for example)
Addresses:
In WAN you deal with different network equipment between client and server (or peers in case of peer-to-peer communication). You need to take in account:
NATs - most of the clients are behind NAT and you need to pass them through. According technics are called "NAT traversal"
Firewalls - may ISP has own rules what client can do or can't. So if you do something specific like custom transport protocol you may bump into ISP firewalls.
Routing - especially multicast and broadcast communication. In common case multicast is not possible to route. Broadcasts are never routed. So you need to avail this type of communication if you want to use WAN.
May be I forgot something. But these points are major. You can read many articles about any of them.

Wireless Oneway Broadcast Feasibility

I am planning on a small project and need help regarding its feasibility.
I have a few wireless mobile devices (could be phones and laptops) which periodically broadcast packets and also each device listens for other broadcasts. Any device in range should receive the broadcasted data (no need to reply or ackwnoledge).
To perform this can I just send UDP packets with address 255.255.255.255, I heard this was deprecated. If so how do I achieve this? There is no underlying network topology so I cannot rely on multicast or is there a way?
If there are 100 such devices, all in wireless range, each 1 performing a periodic broadcast and receive, will it work? will there be too many collisions ? and become infeasible. Each device receiving 70% of the packets is a good performance according to me.
Thank You
Unfortunately, it doesn't work this way.
You won't be able to send IP-layer broadcast packets until you have associated with an access point. Once association has been made, only devices associated with the same AP (and other devices bridged to the IP over its wired interface) will see your broadcasts. The same goes for layer 2 broadcasts as well.
What you need is to get at a lower layer. Unfortunately, each WiFi adapter has different methods for doing this, and for many, it isn't even possible. I'm afraid what you are attempting will not work.

Resources