0

I am using a real time operating system called Vxworks 5.5. The address resolution protocol is disabled and now I need to build up an ARP table manually to initiate IP to IP communication. The IP addresses and MAC addresses are locally administered hence ARP needs to be disabled.

How can I achieve this in VxWorks?

TristanK
  • 8,953
  • 2
  • 27
  • 39
  • Aren't all Operating Systems "real time"? What else would they be? – joeqwerty Jul 18 '19 at 14:23
  • @joeqwerty: Debian stable, maybe? :) – Esa Jokinen Jul 18 '19 at 14:29
  • 1
    "The year is 2002. Brazil is winning the FIFA World Cup and the first cell phone to have a built-in camera is released in the US – yes, this story is THAT old...VxWorks 5.5 reached its End-of-Life (EOL) stage on July 1st, 2018". https://blogs.windriver.com/wind_river_blog/2018/07/vxworks-past-and-future.html . - This isn't a good forum for dead-end platforms and issues that can be solved by upgrading. – Greg Askew Jul 18 '19 at 14:46
  • @joeqwerty No, a [real time OS](https://en.wikipedia.org/wiki/Real-time_operating_system) is something a bit different. It makes specific performance guarantees to processes regarding how much time they will have to execute. – Michael Hampton Jul 18 '19 at 16:43
  • Thanks for the link. – joeqwerty Jul 18 '19 at 16:43
  • That said, unless your production machine actually is currently on Mars, you probably should not be using VxWorks 5.5 but rather a supported version. – Michael Hampton Jul 18 '19 at 16:44
  • There is no relation between a real-time operating system and the asynchronous functions of ARP resolving. If you want to build a manual table look for functions to mutate the IP stacks internal table and use stack functions to send IP frames, or build your own table and use it to craft raw network frames. – Joffrey Jul 19 '19 at 07:54
  • I think this might be a *false because* -> "The IP addresses and MAC addresses are locally administered hence ARP needs to be disabled."... plus if the MACs are "locally administered" (sounds more like a NIC MAC option than a reason to disable ARP, based on experience with other OSes), that implies there's an administrative interface for them which could be used to populate an ARP/MAC table. – TristanK Jul 23 '19 at 08:08

1 Answers1

0

To manually build the arp table better use the arping tool.

You should run the arping <ip> on other host (on a laptop, for example) for every ip address to which your device will communicate.

When the list of ip addresses and corresponded mac addresses has been completed, you can configure the arp table in your device with execution of the arpAdd("IP","MAC",0x04(ATF_PERM)) commands.

Anton Danilov
  • 4,874
  • 2
  • 11
  • 20