В чем разница между `/ sbin / ip route` и` / sbin / route`?


8

Linux поставляется с двумя утилитами

  • /sbin/route
  • /sbin/ip route

В чем разница между этими двумя понятиями и какое эмпирическое правило следует использовать, когда вы решаете, какой из двух вариантов следует использовать? Я знаю, что они оба зарегистрированы в двух разных местах,

  • man 8 route
  • man 8 ip-route

Ответы:


9

routeэто старый традиционный инструмент, доступный во многих системах Unix. ipпринадлежит к пакету iproute2, который является инструментом только для Linux, и использует Netlink API, который представляет собой интерфейс в виде сокета для доступа к информации ядра об интерфейсах, назначениях адресов и маршрутах. Он заменяет большую часть функциональности ifconfig, route, netstatи несколько других.

Я предполагаю, что вы работаете в Linux, поэтому вы должны использовать ipс тех пор routeи ifconfigне рекомендуется, хотя все еще широко используется.

Дальнейшее чтение:


3
+1 за упоминание, что это только Linux . На сайте под названием Unix & Linux это стоит упомянуть.
Хеннес

Я всегда удивлялся, почему придерживаюсь только непереносимых утилит Linux, особенно когда они требуют, чтобы вы были гораздо более многословны. Мне удобнее писать, ifconfig eth0 up 192.168.0.1/24чем ip link set dev eth0 up && ip addr change dev eth0 192.168.0.1/24.
Алисия

2
@ntrrgc Вы можете сократить это до ip l s eth0 up && ip a c dev eth0 192.168.0.1/24. Кроме того, /24синтаксис реализован не во всех ifconfigверсиях, в некоторых системах вам приходится писать, netmask 255.255.255.0что делает его довольно многословным. Но я согласен ifconfig, часто короче.
Марко

0

Разные команды, разный синтаксис.

route Происходит очень и очень давно и до сих пор существует в основном потому, что он всегда существовал, и некоторые вещи все еще ожидают его там.

ipотносится к iproute2упаковке и может делать все , routeи ifconfigможет и многое, многое, многое другое.

Полная документация по ipкоманде может быть найдена здесь среди других мест.

TL; DR: всегда использовать ip.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.