mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-05-11 09:48:24 +02:00
Signed-off-by: Marcel Lorenz <marcel.lorenz@ipfire.org> Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
177 lines
5.9 KiB
Diff
177 lines
5.9 KiB
Diff
diff -Naur a/doc/arpd.sgml b/doc/arpd.sgml
|
|
--- a/doc/arpd.sgml
|
|
+++ b/doc/arpd.sgml
|
|
@@ -1,130 +0,0 @@
|
|
-<!doctype linuxdoc system>
|
|
-
|
|
-<article>
|
|
-
|
|
-<title>ARPD Daemon
|
|
-<author>Alexey Kuznetsov, <tt/kuznet@ms2.inr.ac.ru/
|
|
-<date>some_negative_number, 20 Sep 2001
|
|
-<abstract>
|
|
-<tt/arpd/ is daemon collecting gratuitous ARP information, saving
|
|
-it on local disk and feeding it to kernel on demand to avoid
|
|
-redundant broadcasting due to limited size of kernel ARP cache.
|
|
-</abstract>
|
|
-
|
|
-
|
|
-<p><bf/Description/
|
|
-
|
|
-<p>The format of the command is:
|
|
-
|
|
-<tscreen><verb>
|
|
- arpd OPTIONS [ INTERFACE [ INTERFACE ... ] ]
|
|
-</verb></tscreen>
|
|
-
|
|
-<p> <tt/OPTIONS/ are:
|
|
-
|
|
-<itemize>
|
|
-
|
|
-<item><tt/-l/ - dump <tt/arpd/ database to stdout and exit. Output consists
|
|
-of three columns: interface index, IP address and MAC address.
|
|
-Negative entries for dead hosts are also shown, in this case MAC address
|
|
-is replaced by word <tt/FAILED/ followed by colon and time when the fact
|
|
-that host is dead was proven the last time.
|
|
-
|
|
-<item><tt/-f FILE/ - read and load <tt/arpd/ database from <tt/FILE/
|
|
-in text format similar dumped by option <tt/-l/. Exit after load,
|
|
-probably listing resulting database, if option <tt/-l/ is also given.
|
|
-If <tt/FILE/ is <tt/-/, <tt/stdin/ is read to get ARP table.
|
|
-
|
|
-<item><tt/-b DATABASE/ - location of database file. Default location is
|
|
-<tt>/var/lib/arpd/arpd.db</tt>.
|
|
-
|
|
-<item><tt/-a NUMBER/ - <tt/arpd/ not only passively listens ARP on wire, but
|
|
-also send brodcast queries itself. <tt/NUMBER/ is number of such queries
|
|
-to make before destination is considered as dead. When <tt/arpd/ is started
|
|
-as kernel helper (i.e. with <tt/app_solicit/ enabled in <tt/sysctl/
|
|
-or even with option <tt/-k/) without this option and still did not learn enough
|
|
-information, you can observe 1 second gaps in service. Not fatal, but
|
|
-not good.
|
|
-
|
|
-<item><tt/-k/ - suppress sending broadcast queries by kernel. It takes
|
|
-sense together with option <tt/-a/.
|
|
-
|
|
-<item><tt/-n TIME/ - timeout of negative cache. When resolution fails <tt/arpd/
|
|
-suppresses further attempts to resolve for this period. It makes sense
|
|
-only together with option <tt/-k/. This timeout should not be too much
|
|
-longer than boot time of a typical host not supporting gratuitous ARP.
|
|
-Default value is 60 seconds.
|
|
-
|
|
-<item><tt/-R RATE/ - maximal steady rate of broadcasts sent by <tt/arpd/
|
|
-in packets per second. Default value is 1.
|
|
-
|
|
-<item><tt/-B NUMBER/ - number of broadcasts sent by <tt/arpd/ back to back.
|
|
-Default value is 3. Together with option <tt/-R/ this option allows
|
|
-to police broadcasting not to exceed <tt/B+R*T/ over any interval
|
|
-of time <tt/T/.
|
|
-
|
|
-</itemize>
|
|
-
|
|
-<p><tt/INTERFACE/ is name of networking inteface to watch.
|
|
-If no interfaces given, <tt/arpd/ monitors all the interfaces.
|
|
-In this case <tt/arpd/ does not adjust <tt/sysctl/ parameters,
|
|
-it is supposed user does this himself after <tt/arpd/ is started.
|
|
-
|
|
-
|
|
-<p> Signals
|
|
-
|
|
-<p> <tt/arpd/ exits gracefully syncing database and restoring adjusted
|
|
-<tt/sysctl/ parameters, when receives <tt/SIGINT/ or <tt/SIGTERM/.
|
|
-<tt/SIGHUP/ syncs database to disk. <tt/SIGUSR1/ sends some statistics
|
|
-to <tt/syslog/. Effect of another signals is undefined, they may corrupt
|
|
-database and leave <tt/sysctl/ parameters in an unpredictable state.
|
|
-
|
|
-<p> Note
|
|
-
|
|
-<p> In order to <tt/arpd/ be able to serve as ARP resolver, kernel must be
|
|
-compiled with the option <tt/CONFIG_ARPD/ and, in the case when interface list
|
|
-is not given on command line, variable <tt/app_solicit/
|
|
-on interfaces of interest should be set in <tt>/proc/sys/net/ipv4/neigh/*</tt>.
|
|
-If this is not made <tt/arpd/ still collects gratuitous ARP information
|
|
-in its database.
|
|
-
|
|
-<p> Examples
|
|
-
|
|
-<enum>
|
|
-<item> Start <tt/arpd/ to collect gratuitous ARP, but not messing
|
|
-with kernel functionality:
|
|
-
|
|
-<tscreen><verb>
|
|
- arpd -b /var/tmp/arpd.db
|
|
-</verb></tscreen>
|
|
-
|
|
-<item> Look at result after some time:
|
|
-
|
|
-<tscreen><verb>
|
|
- killall arpd
|
|
- arpd -l -b /var/tmp/arpd.db
|
|
-</verb></tscreen>
|
|
-
|
|
-<item> To enable kernel helper, leaving leading role to kernel:
|
|
-
|
|
-<tscreen><verb>
|
|
- arpd -b /var/tmp/arpd.db -a 1 eth0 eth1
|
|
-</verb></tscreen>
|
|
-
|
|
-<item> Completely replace kernel resolution on interfaces <tt/eth0/
|
|
-and <tt/eth1/. In this case kernel still does unicast probing to
|
|
-validate entries, but all the broadcast activity is suppressed
|
|
-and made under authority of <tt/arpd/:
|
|
-
|
|
-<tscreen><verb>
|
|
- arpd -b /var/tmp/arpd.db -a 3 -k eth0 eth1
|
|
-</verb></tscreen>
|
|
-
|
|
-This is mode which <tt/arpd/ is supposed to work normally.
|
|
-It is not default just to prevent occasional enabling of too aggressive
|
|
-mode occasionally.
|
|
-
|
|
-</enum>
|
|
-
|
|
-</article>
|
|
-
|
|
diff -Naur a/Makefile b/Makefile
|
|
--- a/Makefile
|
|
+++ b/Makefile
|
|
@@ -9,7 +9,6 @@
|
|
DATADIR?=$(PREFIX)/share
|
|
DOCDIR?=$(DATADIR)/doc/iproute2
|
|
MANDIR?=$(DATADIR)/man
|
|
-ARPDDIR?=/var/lib/arpd
|
|
KERNEL_INCLUDE?=/usr/include
|
|
BASH_COMPDIR?=$(DATADIR)/bash-completion/completions
|
|
|
|
@@ -62,7 +61,6 @@
|
|
install: all
|
|
install -m 0755 -d $(DESTDIR)$(SBINDIR)
|
|
install -m 0755 -d $(DESTDIR)$(CONFDIR)
|
|
- install -m 0755 -d $(DESTDIR)$(ARPDDIR)
|
|
install -m 0755 -d $(DESTDIR)$(DOCDIR)/examples
|
|
install -m 0755 -d $(DESTDIR)$(DOCDIR)/examples/diffserv
|
|
install -m 0644 README.iproute2+tc $(shell find examples -maxdepth 1 -type f) \
|
|
diff -Naur a/man/man8/Makefile b/man/man8/Makefile
|
|
--- a/man/man8/Makefile
|
|
+++ b/man/man8/Makefile
|
|
@@ -1,6 +1,6 @@
|
|
TARGETS = ip-address.8 ip-link.8 ip-route.8
|
|
|
|
-MAN8PAGES = $(TARGETS) ip.8 arpd.8 lnstat.8 routel.8 rtacct.8 rtmon.8 rtpr.8 ss.8 \
|
|
+MAN8PAGES = $(TARGETS) ip.8 lnstat.8 routel.8 rtacct.8 rtmon.8 rtpr.8 ss.8 \
|
|
tc.8 tc-bfifo.8 tc-bpf.8 tc-cbq.8 tc-cbq-details.8 tc-choke.8 tc-codel.8 \
|
|
tc-fq.8 \
|
|
tc-drr.8 tc-ematch.8 tc-fq_codel.8 tc-hfsc.8 tc-htb.8 tc-pie.8 \
|
|
diff -Naur a/tc/Makefile b/tc/Makefile
|
|
--- a/tc/Makefile
|
|
+++ b/tc/Makefile
|
|
@@ -89,7 +89,7 @@
|
|
CFLAGS += -DTC_CONFIG_XT_H
|
|
TCSO += m_xt_old.so
|
|
else
|
|
- TCMODULES += m_ipt.o
|
|
+ TCMODULES +=
|
|
endif
|
|
endif
|
|
endif
|