How to differentiate between lan card and data card? - windows

I have a data card with me.
I wanted to know, is there any way programmatically I can tell that, it is data card or it is LAN card?
I have used IFTable, I have used IListManager, INetwork manager provided by Microsoft, but not able to solve the problem.
Edited
I have one lan card and one data card connected on my system, I want to do some operation on data card, but I don't know, when my data card is connected and when my LAN card, enumerating will give me list of all connections, but how to identify LAN and Data card among them.

You should clarify your problem. What problem are you trying to solve? Why do you want to distinguish the cards?
That said, some ideas:
If you just want to identify your specific cards, every network card has a unique ID (the MAC). You can retrieve it using networking tools.
If you want to identify the type of card, you can try to get PCI information, and look for a string. But that is difficult in the general case, because there are so many different types of cards. So you'd need to clarify your question.

There is no clear distinction between the different kinds of networks anymore. On the one hand, LANs have gone wireless with WiFi. On the other hand, public networks have gone local with femtocells. Hence, it becomes increasingly difficult to distinguish the two kinds of networks, and therefore the network cards connecting to them. There is no clear boundary.

Related

Which camera did it come from?

So, here's the situation. I have direct access to two devices, and can take as many pictures as I want with each. Both devices are the same make and model, and do not save any metadata that would distinguish one from the other. This means that they do not leave any specific identifiers in the metadata. I also have a picture that I know came from one of them, but I don't know which. Let's call this photo "photoX". Both devices are the iPhone SE.
So here is the question: is there anything I can do with the two cameras and the pictures I can take with them to figure out which one photoX was taken from?
(Apparently I have to stress this, but metadata searching will not be able to work. I am aware of this.)

GSM-based mobile phone sensor

Alright, this may sound completely insane, I am not an electronics guy, just asking.
As far as I'm concerned, there are two most popular technologies for close-range communication: RFID and NFC. These technologies are just emerging in the mobile phones, as you don't see a lot of devices supporting them. Is it possible to build a GSM based sensor for the purposes of detecting who's sitting at the desk?
Let me describe the context. I'm working with a mobile phone operator to build a shop as part of my studies. They are able to install any GSM transceiver anywhere, and use it legitimately.
As NFC is not quite there yet, one of my proposals to them is to let people use their phones instead of (or as they would use) any RFID card, like Oyster in London, in order to make payments, quickly change tariffs, top-up, etc. I imagine that this may be possible by making a low-power GSM base station combined with a proximity sensor.
If so, then we can get a phone user with the strongest signal, get the information from the proximity sensor to define if there is a phone in front of the sensor and thus detect who is the user. What do you think? Is it something possible?
You can definitely have low powered base stations but they would generally be for a small area in a big venue/city or for a house or room.
Any phone in the coverage area from that operator would connect to that cell if it had the best signal, so you would find it very difficult to distinguish between two users who are a couple of feet apart. I'm guessing this would not be good enough for your use case.

What is good way to find out a nearby xbee module?

Zigbee AT ND command can discover nearby modules if they are in same network (same PAN ID). So in order to find a module that I do not know about its pan id, the only thing came up to my mind was brute forcing pan id. Is there a better way to find out a module other than brute forcing pan id and repeatedly query ND command? I'm currently using libxbee library in c.
You can find nearby nodes by doing an "Active Scan" (ATAS). You'll get the beacons sent by nearby routers and coordinators, with their addresses and PAN IDs. You won't see responses from end devices, and you might not see responses from devices that aren't allowing joining (I can't recall whether they send beacons or not).
This ANSI C XBee Host Library on GitHub has sample code for doing a scan and parsing the results. You can either try that library, or use it to learn the structure of the responses.

Serverless Internet-Wide Chatting Client?

Does anyone know of the logic behind a server-less chat client that would be able to interconnect not LAN-wide but internet-wide? It doesn't need to be able to detect other users world wide, it just needs to obtain some kind of unique identification to be able to connect to a user, like an IP or a unique ID of some sort.
To start, you need some information from somewhere. You can't just turn it on and start chatting without knowing where everyone is. You might have one node that is online all the time and knows a few other nodes. The other nodes would know other nodes and those would know more, etc. It is debatable whether or not you would call that static node a "server" or not. It could just be your friend's node, or a publicly available IP. Once you are up and running, you wont need the start node anymore.
In this type of system, you would need to query your neighbors if you want some sort of identification besides IP address. An IP address has its own drawbacks as well, because you might have two people behind a router at a home DSL connection. Unique ID's would require a recursive query across the whole mesh to find out if your ID is unique.
In this type of system, you would only need to know a limited subset of people in order to chat with anyone, as you can query everyone around you (and the query happens recursively) for the location of that person. An artificial limit on the number of people stored on the local node might be implemented with a Least Recently Used algorithm, kind of like a CPU cache.

Using bluetooth to identify devices in range out of potentially thousands?

Greetings!
The idea is simple. Let's say that I have a service wherein people can walk up to a kiosk and "pair their phone" with a bluetooth device on that kiosk. We'll ignore why people would do this, but let's say that they have an incentive to do so.
Let's say that I have convinced thousands (if not millions) of people to do this thing... and they're walking around with their cellphones with bluetooth ON. (Not discoverable.) How do I solve the problem of scanning for "known devices" if there is a possible pool of millions of known devices?
Again, I don't want to connect with them once I've actually done the initial pairing. I simply want to know they are proximate.
Thoughts?
Well, the first thing is that even if your kiosk has a Class 1 Bluetooth radio in it, which can actually go farther than the advertised 100 meters, it's still extremely unlikely that there will be millions of Bluetooth cell phones who have previously paired with your kiosk within the range of your kiosk's radio. So that narrows down the potential number of Bluetooth devices you're dealing with.
Second, if a device is not discoverable, then it doesn't matter if you've paired with it before or not. You will not find it using a general "Hello, is anybody out there?" inquiry scan. If you've paired with a device, you will know its Bluetooth Device Address and can therefore ping it explicitly and get an answer. This doesn't seem like a reasonable thing to do if you're thinking you might have millions of cell phones paired with your kiosk. (Have you thought about the fact that if you have multiple kiosks your users would have to pair with each kiosk separately? Do you really need to pair with the cell phones to do what you need to do?)
Having said all that, a general inquiry scan will produce a list of discoverable Bluetooth devices in the vicinity of your kiosk's radio. You could use that list to search your own list of devices paired with the kiosk. I can't remember if you get back just the friendly name in the first response or if you get a BD_ADDR as well. If you just get the friendly name, there could be multiple devices with the same friendly name, as I doubt many users change their phones' friendly names.
It's been a while since I really delved into the Bluetooth spec so things may have changed.
Pairing may be overkill: that's about establishing secure communications. Worse, ISTR some phone UIs don't separate pairing (having a secure channel) and trust (allowing the remove device to do stuff without asking the user whether it should), although I hope modern phones get this right.
If you just want the other device's Bluetooth address, you could get people to send the kiosk a business card or something. Or tell them to become discoverable and have your kiosk initially find them. Or they could pair, but as Kirsten says, they'd be paired with a single kiosk: you may not care if all you want is their address, though, rather than the secure channel.
Now you've got a list of Bluetooth addresses. You can share these addresses between multiple kiosks if you've got some sort network between them. In an ideal world, detecting proximity would then be a matter of performing BT inquiry (you don't even need full device discovery here, just knowing what addresses are out there is enough) and matching the addresses you get from that against your list. But that only works when remote devices are discoverable (which means they're listening for inquiry packets, doing what the spec calls inquiry scanning). If they aren't, you'd have to try to connect to each one in turn (you can drop the connection once you know the other guy is there). You could parallelise this with multiple BT radios, but you're looking at a few seconds per address per radio. You're doing the old "Redfang" brute-forcing that people got excited about a few years ago, but it's going to be slow: http://www.newswireless.net/index.cfm/article/924
Of course, if people aren't leaving their devices discoverable, the implication is they don't want to be found, so it's not surprising that this doesn't work.

Resources