임시 네트워크에서 라우팅을 수정하는 방법

임시 네트워크에서 라우팅을 수정하는 방법

Ad-hoc 네트워크를 통해 4개의 Raspberry Pi가 연결되어 있습니다. 해당 주소는 다음과 같습니다.
169.254.1.1
169.254.1.2
169.254.1.3
169.254.1.4

다음과 같이 경로를 수정해야 합니다.
169.254.1.1-->169.254.1.2-->169.254.1.3-->169.254.1.4
현재 저는 mesh ad hoc 네트워크에 BATMAN 프로토콜을 사용하고 있습니다.
나는 전에 시도했다IP 경로가 추가되었습니다명령을 실행했지만 작동하지 않습니다.


편집하다
ebtables를 사용하여 필터링하려고 합니다.MAC 주소사용

$ebtables -A INPUT -s [*mac address*] -j DROP   

규칙이 올바르게 추가되었지만 작동하지 않습니다. 구문에 문제가 있는 것일 수 있습니다.

답변1

아주 오래된 배트맨을 사용하지 않는 한, 배트맨은 계속 나아갈 것입니다.2단계

2007년 초, BATMAN 개발자들은 레이어 3 대신 레이어 2(이더넷 레이어)에서 라우팅한다는 아이디어를 활용하기 시작했습니다. 레이어 3 라우팅 데몬과 구별하기 위해 접미사 "adv"(for: Advanced)가 선택되었습니다. UDP/IP로 교환되는 정보를 기반으로 라우팅 테이블을 운영하는 것이 아니라, 자체적으로 가상 네트워크 인터페이스를 제공하고 이더넷 패킷을 투명하게 전송합니다. batman-adv 커널 모듈은 2.6.38부터 공식 Linux 커널의 일부였습니다.

이는 ip route항목이 아무 작업도 하지 않음을 의미합니다. 라우팅을 제어하려면 커널 인터페이스( /proc제 기억이 맞다면 in)를 통해 BATMAN과 직접 상호 작용해야 합니다.


이것은 아마도 매우 오래된 것일 수 있지만 당시에는 사용할 수 있었습니다.배트 컨트롤이웃 목록, 레이어 2 핑, 레이어 2 추적 경로 및 내부 디버그 테이블을 포함하여 특정 BATMAN 노드가 수행하는 작업에 대한 자세한 정보를 가져옵니다.

이웃과 라우팅 테이블을 무시할 수도 있고 그렇지 않을 수도 있지만 시도해 본 적이 없습니다.

내 메모에는 /sys/kernel/debug/batman_adv/bat0/neighbors/sys/class/net/*/batman_adv(그래서 on 이 /sys아니라 on 이 있음 /proc)이 언급되어 있지만 더 이상 BATMAN을 실행하지 않고 세부 사항을 잊어버렸으며 아마도 커널 모듈 어딘가에서 디버깅을 활성화해야 할 것입니다.

관련 정보