Konfiguruję tunel GRE w Linuksie 2.6.26 i napotkałem bardzo dziwny problem, dla którego nie mogłem znaleźć żadnego rozwiązania.
Stworzyłem tunel GRE o nazwie gre0
, ale bez względu na to, co robię, po prostu nie mogę go usunąć. Polecenie ip tunnel del gre0
kończy się niepowodzeniem z odpowiedzią ioctl: Operation not permitted
. Każda próba zmiany adresów tunelu również kończy się niepowodzeniem.
Następujące polecenia ilustrują problem:
# ip tunnel del gre0
ioctl: Operation not permitted
# ip tunnel change gre0
# ip tunnel change gre0 remote <some address> local <some address>
ioctl: No such file or directory
Mogę bez problemu tworzyć, zmieniać i usuwać inne tunele, ale gre0
po prostu się tam zatrzymuję i nie znikam, nawet jeśli zrestartuję się lub usunę interfejsy.
Po usunięciu ip_gre
modułu tunel znika. Jak tylko włożę moduł ponownie, gre0
pojawi się ponownie i problem będzie się powtarzał.
Mam dwa pytania:
- Co mogę zrobić, aby pozbyć się tego nieznośnego tunelu? Podejrzewam, że może to być błąd jądra lub modułu.
- Gdzie przechowywane są takie trwałe dane (w tym przypadku informacje
gre0
, ale dotyczy to każdej innej konfiguracji, o której nawet nie wiem)?
Jeśli potrzebujesz innych informacji, daj mi znać.
Wielkie dzięki za wszelką pomoc.
Myślę, że znalazłem odpowiedź na ten problem.
Po majstrowaniu przez chwilę postanowiłem odtworzyć problem w czystej instalacji.
ip_gre
Moduł nie jest włożony domyślnie w jądrze po instalacji Debiana.ip tunnel show
nie wyświetla żadnego tunelu. Po włożeniuip_gre
modułu, ale bez tworzenia tunelu,gre0
pojawia się i jest niemożliwy do usunięcia i niezmienny zgodnie z oczekiwaniami.gre0
Wydaje się więc, że jest to atrapa tunelu domyślnie tworzona przezip_gre
moduł.Frustrujące jest to, że ta „cecha” jest całkowicie nieudokumentowana, a nawet nieoczekiwana, ponieważ może być naturalne, że próba stworzenia
gre0
tunelu jako pierwszego (i jedynego) tunelu GRE w systemie.źródło
tunl0
, toipip
zamiast.Musisz sprawdzić, czy moduł gre został całkowicie usunięty. Biegać
aby sprawdzić, czy moduł znajduje się na liście. Jeśli tak, uruchom
aby usunąć je z jądra.
źródło