LINUX.ORG.RU

как настроить несколько подключений к сети, как узнать имя сетевухи

 ,


0

1

Как в последних systemd кошерно делать несколько wired ethernet подключений при загрузке?

Допустим, есть такой расклад:

eth0 - dhcpcd
eth1 - dhcpcd
eth2 - static

Во-первых, когда-то работало systemctl enable dhcpcd@.service, но больше не работает, говорит «некорректное имя сервиса». Да и вообще, оно не учитывает третье подключение со статикой

Во-вторых, можно попробовать подключить через enable dhcpcd@eth0.service, но ведь такие названия больше не поддерживаются! Там вместо названия какая-то чертовщина типа enp0s3 - wtf is that? Где лежит какая-нибудь команда list, позволяющая узнать список доступных сетевух?

Более интересно следующее. Есть ли у этих странных названий какой-нибудь порядок? Т.е., задача ведь состоит в том, чтобы первые две - динамика, третья - статика. Есть ли какая-нибудь трансляция странных имен в их порядковые номера? Стандартный скрипт для этого?

Как зафигачить статическое соединение я вообще не понял :(

Можете кинуть ссылку со внятным мануалом или привести Те Самые Три Магические Строчки, после которых Все Заработает?

(Можно, конечно, попробовать заюзать не-системд, скопировать 3 раза тот же net-auto-wired и поправить там что-нибудь, но это как-то стремно. Раз уж системд теперь считай часть ведра, надо на нем все делать.)

★★★★☆

ip l - покажет тебе все сетевые карты

порядок там есть - имена уникальны и не меняются при перезагрузки, хотя если они чем-то не устраивают то можешь сделать алиасы.

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

а со статикой что? Как запустить третью сетевуху и приклеить к ней сетевые реквизиты?

порядок совпадает с порядком в eth0...ethN? Чтобы не экспериментируя сразу знать, что сетевуха с таким-то имененем физически находится вот здесь на корпусе

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

да ладно, просто я - чайник :) Полгода линуксом не пользовался, пошел настраивать десктоп, а тут оказываеццо прогресс ушел до того, что даже сеть искаропки не работет, надо что-то вертеть-крутить =)

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

наколенке это делается как sudo dhcpcd && ip чего_то_там_для_статики

x0r ★★★★★
()

Там вместо названия какая-то чертовщина типа enp0s3 - wtf is that?

Это знаменитые «Predictable» Network Interface Names. Отключаются двумя командами (из-под рута):

mkdir -p /etc/udev/rules.d
ln -s /dev/null /etc/udev/rules.d/80-net-name-slot.rules

AX ★★★★★
()

Где лежит какая-нибудь команда list, позволяющая узнать список доступных сетевух?

Вот же линаксоиды пошли.. Ставь NM ёпт

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

имена уникальны и не меняются при перезагрузки

Они у меня и до лёниного изобретения «predictable names» были уникальны и не менялись при перезагрузке. И были весьма предсказуемы, особенно в случае одной сетевухи, eth0, да. А теперь какой-то адский адЪ. Офигенно предсказуемый enp0s3.

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

Ставь на голову миску с супом и радуйся.

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

Офигенно предсказуемый enp0s3

Да, именно так - это ты очень верно подметил, рад что тебе так понравилось :)

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

а со статикой что? Как запустить третью сетевуху и приклеить к ней сетевые реквизиты?

В точности также, как ты это делал раньше - запусти NM, отредактируй /etc/network/interfaces ну или что тебе по вкусу.

порядок совпадает с порядком в eth0...ethN?

В смысле совпадает - как можно совпадать с тем, чего нет? У ethN никакого порядка не было - потому, собственно, и были введены предсказуемые имена.

Схема именования подробно описана тут: http://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id...

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

systemctl enable dhcpcd@.service

Это ниразу не способ, если у тебя больше одного интерфейса, используй netcfg. А имена к сетевухам прибивай либо сам через /etc/udev/rules.d/ c примерно таким содержимым:

SUBSYSTEM=="net", ATTRS{address}=="c8:00:00:09:40:4e", NAME="eth0"
Либо довольствуйся «enp0s3»
Конечно есть еще извратный способ через ifrename...

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

У ethN никакого порядка не было

синоним eth0 всегда соответствовал строго определенной дырке на корпусе компьютера. Переустановки разных дистрибутивов линукса никак на это не влияли - eth0 всегда одна и та же дырка. Собственно, они у меня даже на корпусе подписаны (белые бумажки с надписью eth0..eth4, заклеенные сверху прозрачным скотчем)

stevejobs ★★★★☆
() автор топика
Ответ на: комментарий от v0mqfish

а если мак меняется? Я не хочу прибивать имя сетевухи к маку, хочу прибивать к порядковому номеру девайса в иерархии биоса

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

Видимо если очень хочется, то придется искать/писать велосипеды для перевода из «enp0s3» в «ethX», т.к. я понял из http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceN... нативно этого не добиться. А именно «enp0s3» гарантирует привязку именно к слоту.

Вот например, «eth0» у меня на матери интегрирована и имела бы имя «enp2s0», а «eth1» в хз каком pci слоту и она была бы «enp5s1». Какая-то логика есть, но труднопонимаемая.

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

Во-первых, когда-то работало systemctl enable dhcpcd@.service

systemctl enable dhcpcd@eth0.service

Только вместо eth0 ставишь свое имя сетевого интерфейса.

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

раньше если не указывать имя интерфейса, оно поднимало сразу все доступные, и заодним переделывало симлинки на «predictable names»

stevejobs ★★★★☆
() автор топика

SUBSYSTEM==«net», TAG+=«systemd», ENV{SYSTEMD_WANTS}=«dhcpd@%k.service» ? :3

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

А systemctl enable dhcpcd.service сервис тогда для чего? (Чисто для общего развития, лень гуглить).

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

синоним eth0 всегда соответствовал строго определенной дырке на корпусе компьютера.

Только если у тебя была единственная сетевуха.

...они у меня даже...

Что бы там у тебя «даже» ни происходило - это ещё не повод делать идиотские обобщения, противоречащие реальности. Некоторым вон и гомеопатия помогает - это ещё не повод считать её лекарством.

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