Włączyłem obsługę ARP na moim serwerze firmy Dell, na którym działa Linux. Chciałem sprawdzić, czy arptables są włączone, czy nie.
Czy ktoś mógłby mi powiedzieć, jak mam to sprawdzić?
Czy wystarczy uruchomić arp
tutaj?
Komentarze
- Myślę, że ´ arp ´ jest włączone na każdej maszynie mającej złącze etherentne.
- @Rajan, jeśli to możliwe, więcej szczegółów, takich jak problem, co zrobiłeś i czego chcesz.
Odpowiedź
Protokół TCP / IP nie będzie działał bez ARP, więc jest on zawsze dostępny. Zwykle ARP działa automatycznie i nie wymaga ręcznej interwencji.
Jak wspominają inne posty, cat /proc/net/arp
wyświetla aktualną tabelę / pamięć podręczną arp bez użycia specjalnych narzędzi. Możesz manipuluj pamięcią podręczną arp i wpisami statycznymi za pomocą poleceń arp
i ip neighbour
.
arptables
to metoda w jądrze Linuksa do zarządzania filtrowaniem pakietów dla pakietów arp, porównywalna z poleceniem iptables
, które zarządza filtrowaniem pakietów na pakietach TCP i UDP.
O ile wiem, użycie filtrowania arp nie jest standardem występującym w większości dystrybucji Linuksa, chociaż większość zawiera obsługę jądra dla arptables. Zazwyczaj można sprawdzić obsługę jądra za pomocą modinfo arp_tables
.
Jeśli polecenie arptables jest również zainstalowane, arptables -L -n
wyświetli wszystkie / wszystkie skonfigurowane reguły.
Komentarze
- Uruchamiam polecenie arp programu z mojego komputera i widzę tylko puste wyjście. Co mogę z tym zrobić?
- Normalnie zobaczysz przynajmniej adres arp swojej domyślnej bramy, o ile jest ' to faktycznie ruch sieciowy. Wpisy w pamięci podręcznej wygasają po kilku minutach, więc jeśli ' nie masz żadnego ruchu między systemami w tej samej podsieci ani żadnego ruchu w sieci WAN / internet być puste. Pinguj bramę domyślną i powinien pojawić się wpis arp.
Odpowiedź
ARP można wyłączyć na na podstawie interfejsu. ip link show <device>
wyświetli komunikat „NOARP”, jeśli jest wyłączony. Na przykład:
$ ip link show eth2 11: eth2: <BROADCAST,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0e:c6:89:b1:ac brd ff:ff:ff:ff:ff:ff`
Odpowiedź
Możesz po prostu sprawdzić, używając arp
polecenie, które w zasadzie odczytuje plik z /proc
jak poniżej:
cat /proc/net/arp