1d3d78add4
proxy ARP. In a nutshell, this lets you proxy-ARP an arbitrary IP address to an arbitrary MAC address, from any machine on the network. This is useful if your router doesn't do proxy ARP, or does it only in an all-or-none fashion. This code will not work outside of 4.4BSD (it relies on BPF). Furthermore, it won't run on most 4.4BSD operating systems, because a problem with the standard BPF implementation (try spoofing your source ethernet frame address on NetBSD). See: http://www.enteract.com/~tqbf
37 lines
1.3 KiB
Plaintext
37 lines
1.3 KiB
Plaintext
|
|
ARP-catch
|
|
1997 Thomas H. Ptacek
|
|
------------------------------------------------------------------------
|
|
|
|
This is a 4.4BSD program that implements, in userland, third-party
|
|
proxy ARP. In a nutshell, this lets you proxy-ARP an arbitrary IP
|
|
address to an arbitrary MAC address, from any machine on the network.
|
|
This is useful if your router doesn't do proxy ARP, or does it only
|
|
in an all-or-none fashion.
|
|
|
|
This code will not work outside of 4.4BSD (it relies on BPF). Furthermore,
|
|
it won't run on most 4.4BSD operating systems, because a problem with the
|
|
standard BPF implementation (try spoofing your source ethernet frame
|
|
address on NetBSD). I've made available an LKM that "fixes" the problem on
|
|
FreeBSD 3.0; you can find it at http://www.enteract.com/~tqbf.
|
|
|
|
There's not much to document here. The program is a daemon, and reads
|
|
a config file. The config file consists of "router" and "proxy" lines; a
|
|
"router" line gives a symbolic name for a MAC address, ie:
|
|
|
|
router gateway de:ad:be:ef:ca:fe
|
|
|
|
... and a "proxy" line maps an IP address to a router name or a MAC
|
|
address, ie:
|
|
|
|
proxy 10.100.200.1 gateway
|
|
proxy 10.100.200.2 ab:ad:ca:fe:00:11
|
|
|
|
This is fairly esoteric stuff; read the code if you need to know more.
|
|
|
|
If you have problems, questions, comments, bitches, etc, feel free to mail
|
|
me at <tqbf@secnet.com>
|
|
|
|
|
|
|