This is the mail archive of the
ecos-discuss@sources.redhat.com
mailing list for the eCos project.
Re: Temporary IP address assignment trick
- From: Grant Edwards <grante at visi dot com>
- To: Jonathan Larmour <jifl at eCosCentric dot com>
- Cc: ecos-discuss at sources dot redhat dot com
- Date: Thu, 20 Mar 2003 08:57:16 -0600
- Subject: Re: [ECOS] Temporary IP address assignment trick
- References: <20030319164731.A26896@visi.com> <3E79A7C5.9070605@eCosCentric.com>
On Thu, Mar 20, 2003 at 11:36:37AM +0000, Jonathan Larmour wrote:
> Grant Edwards wrote:
> > I've noticed that a couple embedded devices I've played with
> > allow you to assign an IP address temporarily using an arp
> > trick...
> >
> > If the device starts up with no IP address, and it subsequently
> > receives an Ethernet frame with its MAC address, the IP stack
> > will adopt the IP address in that frame as its own. Typically
> > one then points a telnet client or web browser at the device
> > and configures its IP address permanently.
> [snip]
> > This is a very handy way to get a brand-new-out-of-the-box
> > embedded device up and running without requiring a DHCP server.
> >
> > How hard would it be to get either of the eCos stacks to behave
> > like that?
>
> This looks very similar to Reverse ARP, or RARP:
> <http://www.networksorcery.com/enp/rfc/rfc903.txt>. This
> technique is older than BOOTP I believe. Looking at the man
> page for rarpd, I see it has a -A option that's probably what
> you're seeing.
It's not RARP. RARP requires that the device broadcast a RARP
request and then a server replies to that request (much like
BOOTP). The devices I'm playing with just sit there silently
and if they receive _any_ non-broadcast IP packet with their
MAC address, they'll accept the IP address as their own. It
can be an ICMP ping, a TCP SYN, anything.
> As for getting the stacks to do it - I'd have thought it would be pretty
> simple - you only need to change init_all_network_interfaces.
Is there a way to tell the stack to receive and turn over to
the application any packet with a matching MAC address?
--
Grant Edwards
grante at visi dot com
--
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss