1 (23.07.2010 01:56:02 отредактировано XliN)

Прив. Инет у меня подрубается с помощью wpa_supplicant+dchpcd. Пользуюсь вот этой инструкцией http://chehov.multinex.ru/uslugi/linux Все как бы работает, но если комп перезапустить, то dhcp не срабатывает. Приходиться открывать консоль и самому писать dhcpcd -d eth1. Это ни есть гуд (( Как решить это?

У меня две сетевых карты, на одной статика, а на инете dhcp

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

2

http://archlinux.org.ru/forum/viewtopic … amp;t=4417

To build or not to build...

3

PoZiTPoH пишет:

Вы сами ответили на свой вопрос.
HINT: /etc/rc.local

Это не помогает.... Я сразу туда записал строчку с wpa-supplicant

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

4 (19.07.2010 20:17:47 отредактировано XliN)

Проблема решилась. Весь касяк был в том, что для нужной сетевухи выдавалось имя по разному. Могло быть eth0 а после перезапуска eth1. Пришлось силами udev привязать название интерфейса жестко.

Создать файл /etc/udev/10-udev.rules и добавить две строчки (т.к. у меня 2 сетевухи)

SUBSYSTEM=="net", DRIVERS=="?*", ATTRS{address}=="00:04:75:e2:e8:64", NAME="eth0"
SUBSYSTEM=="net", DRIVERS=="?*", ATTRS{address}=="00:03:ad:45:26:78", NAME="eth1"

Потом отрубил в /etc/rc.conf карточку eth1 (эта та которая должна получить IP по  DHCP)

В /etc/rc.local добавил

wpa_supplicant -Dwired -c /etc/wpa_supplicant.conf -i eth1 -B
sleep 3
dhcpcd -d eth1
exit 0 

Ну и все прописал в файле /etc/wpa_supplicant.conf

ap_scan=0 
network={ 
key_mgmt=IEEE8021X 
eap=MD5 
identity="ЛОГИН" 
password="ПАРОЛЬ" 
}

В итоге имею поднятое инетовское соединение.

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

5

ААААА!!! Не работает это все!! Просто совпало а я губу развесил.. Вопрос остается открытым. Как привязать сетевой определенный номер?

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

6

Как привязать сетевой определенный номер? У меня две сетевухи, так вот надо что бы первая всегда получала eth0, а вторая eth1. Нужно это для поднятия wpa_supplicant + dhcpcd. Скрипт в /etc/rc.local привязан к сетевой с номером eth1. После перезапуска имя может смениться и скрипт не срабатывает.

В /etc/rc.local

wpa_supplicant -Dwired -c /etc/wpa_supplicant.conf -i eth1 -B
sleep 3
dhcpcd -d eth1
exit 0

У меня archlinux. В /etc/rc.conf прописано что eth0 статика, а eth1 получает по dhcp, но при запуске демон network выдает FAIL.

Пробовал средствами udev путем добавления двух строк в файл (ничего не правил, тупо вставил где понравилось) и ноль эффекта.

SUBSYSTEM=="net", DRIVERS=="?*", ATTRS{address}=="00:04:75:e2:e8:64", NAME="eth0"
SUBSYSTEM=="net", DRIVERS=="?*", ATTRS{address}=="00:03:ad:45:26:78", NAME="eth1"
MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

7

xlin пишет:

После перезапуска имя может смениться и скрипт не срабатывает.

Уверен, что проблема именно в этом?

8 (20.07.2010 12:55:55 отредактировано XliN)

mycetophylax пишет:

Уверен, что проблема именно в этом?

Да... ifconfig это показывает. eth0 может быть и первая и вторая карточка, это видно по MAC.

Как это лучше сделать, может я велосипед изобретаю?

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

9

xlin, даблпостинг запрещен, темы объедены.

10

Shlomo пишет:

xlin, даблпостинг запрещен, темы объедены.

Сорри. Просто меня задолбала эта канитель ((

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

11

А драйвера на сетевые карты у тебя в ядре или модулями?
Интерфейсы назначаются ядром. И если у тебя на самом деле разные интерфейсы назначаются разным устройствам, то получается, что после каждой перезагрузки порядок определения сетевых карт ядром произвольный (один раз сетевуху1 нашла первой, в другой раз почему-то сначала обнаружилась сетевуха2). А это вообще возможно?

12 (20.07.2010 18:17:19 отредактировано XliN)

mycetophylax пишет:

один раз сетевуху1 нашла первой, в другой раз почему-то сначала обнаружилась сетевуха2). А это вообще возможно?

Если действие грибов еще не кончилось то возможно. Сначала не понял в чем касяк, но проанализировал и понял что сетевухи могут определяться по разному. Их как то надо привязать. Каждую к конкретному интерфейсу.

Как проверить в ядре или модулем? Я дрова не ставил, тогда скорее всего все в ядре.

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

13

xlin пишет:

Приходится открывать консоль и самому писать dhcpcd -d eth1...

Но ведь если после этого все работает,  то нифига интерфейсы не меняются местами, иначе пришлось бы писать dhcpcd -d eth0. Или я чего-то не понимаю?  wink .

14

xlin пишет:

Как проверить в ядре или модулем? Я дрова не ставил, тогда скорее всего все в ядре.

Покажи вывод lspci -k.

15

Мой /etc/udev/rules.d/70-persistent-net.rules

# PCI device 0x10ec:0x8168 (r8169)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:1f:d0:8e:7b:af", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x10ec:0x8139 (8139too)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:e0:4c:d0:25:fb", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

16

mycetophylax пишет:

Покажи вывод lspci -k.

Сейчас не могу показать вывод, комп занят. Чуть позже.

mycetophylax пишет:

Но ведь если после этого все работает,  то нифига интерфейсы не меняются местами, иначе пришлось бы писать dhcpcd -d eth0. Или я чего-то не понимаю?

Совершенно верно.... приходиться писать вместо eth1 - eth0

А в твоем etc/udev/rules.d/70-persistent-net.rules, больше ничего нет? Кроме этих двух строчек? В моем, если не изменяет память кучу всего написано.

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

17

xlin пишет:

А в твоем etc/udev/rules.d/70-persistent-net.rules, больше ничего нет? Кроме этих двух строчек? В моем, если не изменяет память кучу всего написано.

Все. Остальное - только комментарии.

18

mycetophylax, А какой дистр? Не генту случаем?Просто именно такого файла у меня нет... Пробовал создавать свой, но толку ноль. Позже попробую сделать по твоему подобию.

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

19

xlin пишет:

mycetophylax, А какой дистр? Не генту случаем?

Gentoo  wink

xlin пишет:

Просто именно такого файла у меня нет... Пробовал создавать свой, но толку ноль. Позже попробую сделать по твоему подобию.

Смотри значение RULES_FILE в файле /lib/udev/write_net_rules.

20 (21.07.2010 18:08:07 отредактировано XliN)

02:07.0 Ethernet controller: D-Link System Inc RTL8139 Ethernet (rev 10)
    Subsystem: D-Link System Inc DFE-538TX 10/100 Ethernet Adapter
    Kernel driver in use: 8139too
    Kernel modules: 8139too
02:08.0 Ethernet controller: Intel Corporation 82801DB PRO/100 VE (LOM) Ethernet Controller (rev 82)
    Subsystem: Fujitsu Technology Solutions Device 1001
    Kernel driver in use: e100
    Kernel modules: e100

Вот такое у меня выдает? Это значит в ядре?

В /lib/udev/write_net_rules вот такая строчка

RULES_FILE='/etc/udev/rules.d/70-persistent-net.rules'

Такого файла нет в системе, попробую его создать и протестить.

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

21

xlin пишет:

Вот такое у меня выдает? Это значит в ядре?

Модулями.

xlin пишет:

В /lib/udev/write_net_rules вот такая строчка

RULES_FILE='/etc/udev/rules.d/70-persistent-net.rules'

Такого файла нет в системе, попробую его создать и протестить.

Ага. Скопируй мой и подставь свои значения.

22 (22.07.2010 20:56:20 отредактировано XliN)

Отказался я от DHCP и прописал все руками. Так все работает, но опять же имя сетевухи постоянно меняется.... права не знаю что и делать... Есть мысли?

Мне нужно что бы
eth0 - 192.168.1.1 - локалка цеплялась по MAC 00:30:05:42:C:F2
eth1 - 10.28.135.128 - инет цеплялся по MAC 00:05:5D:34:1D:78

Локалка мне нужна для раздачи инета остальным членам семьи. Не хочется даже пока переходить к настройке  IPTABLES.

Покажите пару строчек после переменной RULES_FILE

У меня есть кучу файлов 10-20-30 и т.д. в самой /lib/udev/rules.d/ Но они все с пометкой, типо не меняйте он все равно с генерируется заново

Вот что меня сильно смущает, по всем правилам если удалить файл /etc/udev/rules.d/70-persistent-net.rules то после перезапуска он должен создаться заново через udev. Но! У меня такого файла не было изначально!!

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

23 (26.07.2010 21:57:09 отредактировано XliN)

Вроде работает. Определяется правильно, но я пока не буду радоваться... проведу тест.

[xlin@saikov ~]$ dmesg | grep eth
8139too 0000:02:07.0: eth0: RealTek RTL8139 at 0xf0a72000, 00:05:5d:34:1d:78, IRQ 18
e100: eth1: e100_probe: addr 0xc2000000, irq 20, MAC addr 00:30:05:42:ac:f2

Я создал файл /etc/udev/rules.d/70-persistent-net.rules, который прописан в /lib/udev/write_net_rules в переменной

RULES_FILE='/etc/udev/rules.d/70-persistent-net.rules'

Вот с таким содержанием

SUBSYSTEM=="net", ATTR{address}=="00:05:5d:34:1d:78", NAME="eth0"
SUBSYSTEM=="net", ATTR{address}=="00:30:05:42:ac:f2", NAME="eth1"

А назначение статического IP и шлюза для двух сетевых карт, взял на себя файл /etc/rc.conf, а именно network демон.

[xlin@saikov ~]$ cat /etc/rc.conf
eth0="eth0 10.28.135.127 netmask 255.255.255.0 broadcast 10.28.135.255"
eth1="eth1 192.168.1.1 netmask 255.255.255.0 broadcast 192.168.1.255"
INTERFACES=(eth0 eth1)
gateway="default gw 10.28.135.254"
ROUTES=(gateway)
[xlin@saikov ~]$ ifconfig 
eth0      Link encap:Ethernet  HWaddr 00:05:5D:34:1D:78  
          inet addr:10.28.135.127  Bcast:10.28.135.255  Mask:255.255.255.0
          inet6 addr: fe80::205:5dff:fe34:1d78/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1044 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1070 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:413070 (403.3 Kb)  TX bytes:247737 (241.9 Kb)
          Interrupt:18 Base address:0x2000 

eth1      Link encap:Ethernet  HWaddr 00:30:05:42:AC:F2  
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::230:5ff:fe42:acf2/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:7 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 b)  TX bytes:578 (578.0 b)
MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

24

Самое главное... МАК адреса в конфигах пишите в нижнем регистре, а то не будет работать. Для Udev это критично.

MX Linux 21.2 x86_64
Чем больше я работаю админом, тем больше понимаю, насколько волшебна фраза - "Нет технической возможности!"

25

cat /etc/udev/rules.d/50-network.rules 
KERNEL=="eth*", ATTR{address}=="ff:ff:ff:ff:ff:ff", NAME="eth0"
KERNEL=="eth*", ATTR{address}=="cc:cc:cc:cc:cc:cc", NAME="eth1"

У меня безотказно работает при таком содержимом

26

можно подойти с другой стороны: сразу после поднятия интерфейса и ДО старта dhcpcd нужно пройтись sed'ом ifconfig, и вычислить интерфейс. Затем его подставить в вызов dhcpcd.

 Консоль:

$ /sbin/ifconfig|sed -rn '/HWaddr 00:80:zz:zz:zz:zz/s/^(eth[0-9]).*$/\1/p'
eth1

Карусель разнесло по цепочке за час
Всех известий — конец
Да, весна началась!
(всё к лицу подлецу, как родному отцу, не рассказывай, батя, и так всё пройдёт)