LINUX.ORG.RU
ФорумAdmin

почему gateway в debian становится default?

 , ,


0

1

В двух словах, если в CentOS прописать в /etc/sysconfig/network-scripts/ifcfg-eth0 например, следующее:

gateway=x.x.x.x

,то этот самый gateway не встанет в список default gateway. Мне так и надо.

На дебиане же если в настройках интерфейса прописать gateway=x.x.x.x , то он добавляется к имеющемуся уже у меня default gateway. Чо делать будем?

Ты сначала подумай, что такое gateway и маршрут по умолчанию.

А потом напиши, что тебе надо.

kostik87 ★★★★★ ()
Последнее исправление: kostik87 (всего исправлений: 1 )

а чем же тогда становица ваш gateway и вкуда етот гейтвей в centos?

anonymous ()
Ответ на: комментарий от redgremlin

А ты какого срайона? Есть чо по теме или фуфломет?

rusya_rr ()

Шлюз на интерфейсе - это адрес системы, куда слать пакеты, если нет правил в локальной таблице маршрутизации.

Таких интерфейсов в локальной системе может быть много. Шлюзов, соответственно, тоже. В Centos если этой самой локальной системе не показать в явном виде, какой или какие из этих адресов использовать в качестве шлюза по умолчанию, то система не будет знать, куда отправлять пакеты к адресам, которых нет в ее локальной таблице маршрутизации. Несмотря на то, что шлюзы эти в описаниях интерфейсов есть.

В дебиане картина другая. Раз есть путь в мир, надо добавить его к остальным. Мне это не нужно, я сам распишу, кому быть частью DG, кому нет. Но инфу о шлюзах для каждого интерфейса мне знать надо. Так ясно? А то набежало петросянов...

rusya_rr ()
Ответ на: комментарий от rusya_rr

Таких интерфейсов в локальной системе может быть много. Шлюзов, соответственно, тоже.

Если ты говоришь именно о шлюзе, т.е. gateway, он же default route, то в основной таблице маршрутизации (main) может быть только один маршрут по умолчанию (gateway).

Синтаксис добавления маршрута по умолчанию:

ip route add default via 172.17.0.1
route add default gw 172.17.0.1

Маршрут по умолчанию (gateway) добавляется в таблицу маршрутизации main, что бы увидеть её содержимое воспользуйся iproute2:

ip route show table main
Если тебе нужно, что бы пакеты, пришедший из одной сети маршрутизировались через один шлюз, а из другой сети через другой или то же самое с интерфейсами, то тебе нужно создать свою таблицу маршрутизации, привязать к ней интерфейсы или нужные сети и в каждой из таблиц указать свой шлюз.

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

Ты, скорее всего, имеешь ввиду просто маршрут до некоторой сети, которая недоступна напрямую, а лишь через определённый host, который будет являться шлюзом для доступа к нужной сети. В этом случае тебе использовать директиву gateway нельзя, она используется для указания именно маршрута по умолчанию. Тебе нужно добавить маршрут посредством iproute2 или просто route:

ip route add 192.168.0.0/24 via 172.17.0.1
route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.17.0.1
Как минимум в Debian нужно для этого использовать функцию postup и просто указать в ней указанные выше команды.

Подытожу:
директива gateway используется для указания маршрута по умолчанию, в общем случае он может быть только один в одной таблице маршрутизации; для указания маршрутов до сетей или хостов используй iptoute2 или просто route, смотри выше.

kostik87 ★★★★★ ()
Последнее исправление: kostik87 (всего исправлений: 1 )
Ответ на: комментарий от rusya_rr

Ты примеры показывай, да выводы

ip a s; ip r s

Навскидку: у тебя несколько шлюзов в конфигах и поэтому перезаписывается.

Deleted ()
Ответ на: комментарий от Deleted

Да, мне тут объясняли уже, что директива gateway - это именно для default gateway.

Фсем чмоки.

rusya_rr ()
Ответ на: комментарий от kostik87

он же default route, то в основной таблице маршрутизации (main) может быть только один маршрут по умолчанию (gateway)

хоть сто штук, если с разными метриками

selivan ★★★ ()
Ответ на: комментарий от selivan

Спасибо за поправку. в Любом случае простое указание gateway в конфигурационном файла interfaces для разных интерфейсов приведёт к попытке изменения маршрута по умолчанию без указания метрики.

kostik87 ★★★★★ ()
Ответ на: комментарий от selivan

В любом случае ТС нужно просто проложить маршрут до некоторой сети через указанный хост (шлюз).

kostik87 ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.