Well, the following is really ugly so beware:

if you know about the network infrastructure (ask 'ip a' on unix) you could 
also run nmap with 'nmap -sn 192.168.1.0/24' to fill your arp cache with all 
devices connected to the network. Then you can use 'arp -a' to list all 
devices, even the ones that are not so communicative. The response will be full 
of 'empty' arp entries, so beware of that.

I know, it's really ugly, but it could work :D

Alex

> Christofer Dutz <[email protected]> hat am 12. März 2018 um 15:22 
> geschrieben:
> 
> 
> Hi Alexander,
> 
> yeah ... I already thought about that ... the "arp -a" does work, after I 
> sort of had some form of communication prior to that lookup. My S7 is very 
> uncommunicative if I just turn it on. Having fixed IP not much chatter 
> leaving the grey box which my client could catch and remember. Some people 
> say: Ping the box, then it's in the arp cache, but I would ping it, if it had 
> an IP address ... if there was any "Hey guys I'm new to the network, please 
> introduce yourselves" type of package, that would be awesome (HGINTTNPIY 
> Protocol ;-) ) 
> 
> I had to do a cli-parsing option for my RawIpSocket as I needed to find the 
> default gateway if I'm connecting to a device not on the same physical 
> network and I need to go through a router or gateway. It worked but I had to 
> implement parsers for all sorts of OSes and it doesn't really feel good to 
> rely on that. So that's sort of a measure of last resort for me.
> 
> Chris
> 
> 
> Am 12.03.18, 15:13 schrieb "Alexander Wellbrock" 
> <[email protected]>:
> 
>     Hey Christofer,
>     
>     with your MAC-Address problem a hackish way could be to implement a small 
> adapter for a native query of the arp-table and a little parser to parse the 
> information which contains mac-addresses and corresponding network 
> interfaces. On unix systems that would be 'arp -a' and splitting the result 
> by whitespace. You retrieve hostname, ipaddress, mac-address and interface.
>     
>     Alex
>     
>     > Christofer Dutz <[email protected]> hat am 12. März 2018 um 
> 14:12 geschrieben:
>     > 
>     > 
>     > Hi all,
>     > 
>     > after realizing that Beckhoff seems to use ADS inside of EtherCat 
> frames sent directly inside Ethernet frames (which seems to take only a 
> fraction of the protocol overhead a normal TCP packet requires. I renamed the 
> RawSocket to RawIpSocket and added a new type RawEthernetSocket, which allows 
> to send and receive raw Ethernet frames and would allow implementing 
> protocols like EtherCat and Profinet IO.
>     > 
>     > The one problem I’m having with this, is that right now you need to 
> pass in the MAC addresses of the target as well as that of the source. The 
> problem without this I can’t seem to be able to find out which network device 
> is able to communicate with the given MAC address. I tried several things, 
> but none of them seemed to work without knowing the IP address of the target. 
> Having a Ethernet level connection sounded bad to require an IP. It anyone 
> here has an Idea how I could check which local network device can be used to 
> send data to a remote mac address, I would be super happy.
>     > 
>     > Next thing I definitely need to do, is to implement the “Raw socket” -> 
> Netty integration … sort of a little hesitant to do that as this API is 
> really quite a mess :-(
>     > 
>     > Chris
>     
>

Reply via email to