Jakie są różnice między iputils-ping a inetutils-ping?

26

Używam obrazu Debian 9 na maszynie wirtualnej. Polecenie ping nie zostało zainstalowane. Kiedy biegnę:

sudo apt-get install ping

Pyta mnie:

Package ping is a virtual package provided by:
  iputils-ping 3:20161105-1
  inetutils-ping 2:1.9.4-2+b1
You should explicitly select one to install.

Dlaczego są dwa narzędzia pingujące? Jakie są między nimi różnice? Czy istnieją jakieś wytyczne dotyczące wyboru jednej wersji w stosunku do drugiej? Jakie są konsekwencje tego wyboru? Czy wszystkie skrypty i programy będą kompatybilne z obiema wersjami?

Ortomala Lokni
źródło

Odpowiedzi:

20

iputils„sping obsługuje sporo więcej funkcji niż inetutilsping , np IPv6 (która inetutilsimplementuje w oddzielnym pliku binarnego, ping6), pingi transmisji bitów, jakość usług ... Połączone manpages podać szczegóły.

iputilspingobsługuje wszystkie opcje dostępne na inetutilsping, więc skrypty napisane dla tego drugiego będą działały dobrze z tym pierwszym. Odwrotna iputilssytuacja nie jest prawdą: skrypty korzystające z opcji -specyficznych nie będą działać inetutils.

O ile istnieją oba, inetutilsto narzędzia sieciowe GNU , ukierunkowane na różne systemy operacyjne i zapewniające wiele różnych narzędzi sieciowych; iputilsjest specyficzny dla Linuksa i zawiera mniej narzędzi. Zazwyczaj łączysz oba elementy, aby uzyskać pełne pokrycie i obsługę funkcji specyficznych dla systemu Linux, w systemie Linux, i używać tylko inetutilsw systemach innych niż Linux.

Stephen Kitt
źródło
Dziękuję za Twoją odpowiedź. Mówisz, że zazwyczaj łączysz oba, aby uzyskać pełne pokrycie, ale ponieważ oba implementują wirtualny pakiet ping, jeśli zainstaluję jedno, drugie zostanie usunięte. Jak je połączyć?
Ortomala Lokni
@Ortomala Miałem na myśli to, że łączysz oba zestawy narzędzi: na przykład ftpz inetutils, pingz iputils, itp. (Ta część mojej odpowiedzi nie była specjalnie ukierunkowana ping).
Stephen Kitt
7

inetutils-pingjest przenośną implementacją GNU, która jest używana w systemach Debiana innych niż Linux (takich jak Debian GNU / kFreeBSD ).

iputils-pingjest tylko Linux, ale ma więcej funkcji. Jeśli używasz Linuksa, prawdopodobnie potrzebujesz iputilswersji ping.

sebasth
źródło
1
Nauczyłem się z odpowiedzi @ StephenKitt, która iputils-pingobsługuje ipv6 z tym samym plikiem binarnym ( ipv6jest dowiązaniem symbolicznym), a jednocześnie inetutils-pingzapewnia osobny ping6plik binarny. Oba obsługują ipv6 , ale dowiązania symboliczne nie są widoczne z list plików paczek.debian.org.
sebasth
Przetestowałem pingz obu pakietów. ping6wydaje się działać tylko przy inetutils-pingponownej instalacji thx
GAD3R
@ GAD3R Do czego potrzebujesz ping6polecenia, jeśli pingz iputils-pingobsługuje oba protokoły? W razie potrzeby możesz zmusić go do używania tylko jednego protokołu z przełącznikami -4i -6.
Johan Myréen,
1
@ GAD3R, co jest dziwne, iputils-pinginstaluje ping6dowiązanie symboliczne, więc powinieneś być w stanie ping6 ::bez instalowania inetutils-pingw ogóle (i mogę, w systemach, w których to sprawdziłem).
Stephen Kitt
0

Możesz zainstalować jeden z nich, pakiet holowania udostępnia plik binarny ping, inetutils-pingzapewni dodatkowe narzędzieping6

GAD3R
źródło
0

iputils-pingwykonuje wyszukiwanie wsteczne za pomocą zapytania DNS PTR. Jeśli nie będzie odpowiedzi, będziesz musiał poczekać na limit czasu.

inetutils-ping w tej sytuacji działa znacznie lepiej.

youfu
źródło