The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Ethernet, ARP, привязка MAC адресов.

   Корень / Администратору / Сетевая подсистема, маршрутизация / Ethernet, ARP, привязка MAC адресов.

----* Пробуждение компьютера по сети с помощью D-Link DIR 300 (320) NRU   Автор: jPump  [комментарии]
  ++ Задача:
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Подстановка HTTP-трафика определенному компьютеру в локальной сети (доп. ссылка 1)   [комментарии]
  Используя нехитрые манипуляции в Linux можно подшутить или удивить соседа по офису, например отобразив персональное поздравление при попытке открыть соседом какой-нибудь известного ресурса. Манипуляции проделываются без изменения конфигурации шлюза, путем поднятия web-сервера на своей машине и перенаправление на него запросов, через подмену ARP-адреса шлюза в кэше на машине соседа. Техника действует только в пределах локальной сети.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Настройка PPPoE соединения в Debian/Ubuntu Linux (доп. ссылка 1)   Автор: Сергей Афонькин  [комментарии]
  В данной заметке пойдет речь о частном случае настройки PPPoE - когда необходимо установить соединение на определенный PPPoE концентратор (в том случае когда в сети имеется несколько концентраторов), без использования графических утилит.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Объединение сетeвых интерфейсов в Ubuntu Linux при помощи "bonding" (доп. ссылка 1)   Автор: Stepanoff  [комментарии]
  В статье рассказано, как объединить два физических сетевых интерфейса в один для увеличения пропускной способности или для повышения отказоустойчивости сети. В Linux это делается при помощи модуля bonding и утилиты ifenslave. В большинстве новых версий дистрибутивов модуль ядра bonding уже есть и готов к использованию, в некоторых вам придется собрать его вручную. Я настраивал данное решение на Ubuntu 8.04 server amd64, поэтому примеры установки ПО взяты оттуда.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Превращение Cisco Catalyst 6500 в кабельный тестер (доп. ссылка 1)   Автор: Gleb Poljakov  [комментарии]
  Некоторые карты для Cisco Catalyst имеют встроенный "кабельный тестер" - Time Domain Reflectometry (TDR). TDR может использоваться для определения обрывов в кабеле, неверно обжатых коннекторов, повреждений изоляции и др.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Конфигурирование bonding для сетевых интерфейсов на RHEL/CentOS 5 (доп. ссылка 1)   Автор: Roman Sozinov  [комментарии]
  Конфигурация необходимых сетевых интерфейсов:
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Конфигурирование VLAN в RHEL/CentOS/Fedora и Debian/Ubuntu (доп. ссылка 1) (доп. ссылка 2)   Автор: Roman Shramko  [комментарии]
  Ниже представлены примеры настройки VLAN через стандартные средства дистрибутивов Linux.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Восстановление потерянного Ethernet линка в Linux   [комментарии]
 
В офисе внезапно отключили электроэнергию. На одном из работающих в тот момент ноутбуков, 
после восстановления электричества, отказался подниматься сетевой линк.
На свиче отображалось отсутствие физического линка. 
Замена патч-корда, переключение в другой порт, жесткая перезагрузка - не помогли.

   # mii-tool eth0

   eth0: no link

Пробуем инициировать autonegotiation:

   # mii-tool -r eth0

бесполезно. Решаемся испробовать опцию -R для переинициализации трансивера.

   # mii-tool -R eth0

и, о чудо !, линк поднялся.
 
----* MAC DNS лист   Автор: Vladimir Shingarev  [комментарии]
 
Иногда нужно узнать какому производителю принадлежит оконечное оборудование, 
наблюдая только его мак на интерфейсе. А открывать браузер для этого лениво.

В таком случае удобно создать MAC-based dns лист. Пользоваться просто:

   ket:/home/sva# host -t txt 001243.macl.nov.ru
   001243.macl.nov.ru descriptive text "Cisco"
   ket:/home/sva# host -t txt 0050ba.macl.nov.ru
   0050ba.macl.nov.ru descriptive text "D-LINK"
 
----* Объединение сетевых интерфейсов при помощи протокола LACP во FreeBSD 7 (доп. ссылка 1)   Автор: s@sh@  [комментарии]
  Собираем ядро с поддержкой LACP (Link aggregation control protocol):
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Настройка Linux как Wifi шлюза для КПК (доп. ссылка 1)   Автор: Михаил Конник  [комментарии]
  Linux шлюз:
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Как "протянуть" 802.1q tagged порт через ip-сеть.   Автор: Roman Timofeev aka ^rage^  [комментарии]
  Дано:
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Сброс счетчиков ifconfig в Linux   Автор: OlegOS (Очередин Олег)  [комментарии]
 
Если нужно сбросить счетчики пакетов/байт, отображаемые ifconfig, то есть из /proc/net/dev, 
нужно собрать драйвер сетевой карты в виде модуля (не в ядро). 
Для сброса опускаем интерфейс, выгружаем драйвер, загружаем снова и поднимаем интерфейс. 
Должно работать на всех картах.

Пример.

   ifdown eth0
   modprobe -r eepro100
   modprobe eepro100
   ifup eth0

Для того чтобы узнать имя драйвера обеспечивающего работу сетевого интерфейса:

   ethtool -i eth1
 
----* Привязка имени сетевого интерфейса к MAC адресу в Linux (доп. ссылка 1)   [комментарии]
 
При наличии нескольких одинаковых сетевых карт, чтобы гарантировать, что eth0, eth1,.. всегда будут 
закреплены за одними и теми же картами, можно огранизовать привязку имени к MAC адресу:

В /etc/mactab добавляем:

   eth0 00:23:B7:89:39:E2
   eth1 00:08:A3:20:F8:29
   eth2 00:50:BA:29:B7:32

Для Debian GNU/Linux создаем скрипт /etc/network/if-pre-up.d/nameif

   #!/bin/sh
   PATH=/sbin
   nameif -c /etc/mactab

Для других Linux дистрибутивов нужно на начальном этапе инициализаци выполнить:

   /sbin/nameif eth0 00:23:B7:89:39:E2
   /sbin/nameif eth1 00:08:A3:20:F8:29
   /sbin/nameif eth2 00:50:BA:29:B7:32
 
----* Как настроить сетевой мост во FreeBSD   [комментарии]
  Предположим, имеется несколько сетевых интерфейсов fxp0,fxp1,fxp2,fxp3
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Управление дуплексным режимом и скоростью линка в различных ОС. (доп. ссылка 1)   [комментарии]
  Solaris
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Проброс трафика через Linux машину используя Proxy ARP (доп. ссылка 1) (доп. ссылка 2)   [комментарии]
 
Пусть:
x.x.x.96/28 - выделенная подсеть, которую нужно распределить по машинам в локальной сети.
x.x.x.97 - IP внешнего шлюза.
Требуется поставить между шлюзом и сетью фаервол, 
с одним адресом на двух интерфейсах x.x.x.98, транслируя ARP трафик используя "Proxy ARP".

(x.x.x.99 ... x.x.x.110) --- (eth1, x.x.x.98 | eth0, x.x.x.98) --- (x.x.x.97)

Удаляем маршруты созданные по умолчанию.
   ip route del x.x.x.96/28 dev eth0
   ip route del x.x.x.96/28 dev eth1

Пакеты для x.x.x.97 пускаем через eth0, а для x.x.x.96/28 через eth1
   ip route add x.x.x.97 dev eth0
   ip route add x.x.x.96/28 dev eth1

Включаем Proxy ARP
   echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp
   echo 1 > /proc/sys/net/ipv4/conf/eth1/proxy_arp
 
----* Объединение сетевых интерфейсов под Linux (доп. ссылка 1)   [комментарии]
  Превращение двух 100 мбит/c сетевых карт в одну виртуальную, с пропускной способностью 200 мбит/c.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Объединение сетевых интерфейсов под FreeBSD 5.x (доп. ссылка 1)   Автор: Мишка  [комментарии]
 
Превращение двух 100 мбит/c сетевых карт в одну виртуальную, с пропускной способностью 200 мбит/c .

  kldload /boot/kernel/ng_ether.ko
  kldload /boot/kernel/ng_one2many.ko
  ifconfig rl0 up
  ifconfig rl1 up
  ngctl mkpeer rl0: one2many upper one
  ngctl connect rl0: rl0:upper lower many0
  ngctl connect rl1: rl0:upper lower many1
  ngctl msg rl1: setpromisc 1
  ngctl msg rl1: setautosrc 0
  ngctl msg rl0:upper \
        setconfig "{ xmitAlg=1 failAlg=1 enabledLinks=[ 1 1 ] }"
  ifconfig rl0 inet 192.168.0.78 
 
----* Привязка IP к MAC адресу (доп. ссылка 1)   Автор: Krigs  [комментарии]
  Я сделал так (идею тоже нашел на этом сайте):
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Включение Device Polling в FreeBSD (доп. ссылка 1)   [комментарии]
 
man polling - периодических опрос состояния ядром, вместо генерации прерываний 
(полезно при очень большом числе пакетов проходящих через сетевую карту), 
возможен комбинированный вариант, когда polling включается при преодалении
определенного порога нагрузки).
В конфигурации ядра
   options DEVICE_POLLING
   options HZ=1000
Далее:
   sysctl kern.polling.enable=1
   sysctl kern.polling.user_frac=50
 
----* Смена скорости (10/100) и duplex (full/half) на сетевых картах Realtek-8139   Автор: Alexey N. Kovyrin  [комментарии]
 
1) Duplex можно менять параметром full-duplex модуля 8139too:
   full-duplex=1  (Full-Duplex)
   full-duplex=0  (Half-Duplex)

2) Также существует параметр media, который является набором битовых полей: 
   5-й бит: 1=100Mbps / 0=10Mbps
   4-й бит: 1=Full-Duplex / 0=Half-Duplex
   9-й бит: Форсированная установка параметра duplex (1=Force / 0=Don't Force) 
   9-й бит используется только вместе с 4-м.

3) Примеры:
   modprobe 8139 full-duplex=1  (100Mbps Full-Duplex)
   modprobe 8139 full-duplex=0  (100Mbps Half-Duplex)
   modprobe 8139 media=16  (10Mbps Full-Duplex)
   modprobe 8139 media=48  (100Mbps Full-Duplex)
   modprobe 8139 media=32  (100Mbps Half-Duplex)
   modprobe 8139 media=32  (100Mbps Half-Duplex)
   modprobe 8139 media=0  (10Mbps Half-Duplex)
 
----* С чем может быть связаны потери пакетов и нестабильная работа ethernet карт ? (доп. ссылка 1)   [комментарии]
 
Приходилось сталкиваться с проблемами согласования режимов работы карт Intel EtherExpress 100 и 
Reltek  RTL-8139 c коммутаторами и концентраторами различных производителей. Несогласование 
проявляется, например в работе карты в режиме half-duplex, а свича в
full-duplex и т.д. (в linux: /sbin/mii-tool -F 100baseTx-FD eth0)
 
----* Как в Linux выставить принудительно 100Mb FullDuplex для Intel EtherExpress Pro100, а то auto-select с некоторыми свичами не работает. (доп. ссылка 1)   [обсудить]
 
/sbin/mii-tool -F 100baseTx-FD eth0
или ethtool -s eth0 speed 100 duplex full autoneg off

Для модуля:
В /etc/modules.conf:  
  options eepro100 options=0x200 full_duplex=1
  alias eth0 eepro100 
insmod eepro100.o debug=1 options=0x200
Для ядра в boot приглашении:
     ether=0,0,0x200,eth0 
PS. Для драйвера версии меньше 1.14 (mod_info -a eepro100) вместо 0x200 следует писать 0x30.
 
----* Почему выкачиваются данные с машины нормально, как только пытаюсь что-то закачать - соединение останавливается, даже через ssh больше 5 мин. не удается поработать. Другие машины работают нормально.   [комментарии]
 
Неоднократно замечена проблема работы сетевых карт на базе RealTek 8129/8139 (машины под FreeBSD, 
но с другими ОС тоже проявляется) с некоторыми концентраторами и коммутаторами. 
Проявляется в замирании  сессий до истечения таймаута. 
Диагностика: ping -s N remote_ip, при больших N не проходят.
Решение: Смените сетевую карту, например, на Intel EtherExpress Pro.
 
----* Как переключить сетевую карту в FreeBSD из full-duplex в half-duplex   [комментарии]
 
Текущий режим работы сетевой карты можно посмотреть выполнив:
# ifconfig fxp0 
Перевести сетевую карту в режим работы 10baseT/UTP half-duplex:
# ifconfig fxp0 media 10baseT/UTP mediaopt half-duplex
Автоматически выбрать режим:
# ifconfig fxp0 media autoselect
Подробнее: man 4 ed, man 4 rl, man 4 fxp
 
----* Объединение сетевых интерфейсов в Gentoo Linux (доп. ссылка 1)   Автор: Sheridan  [комментарии]
  Довольно часто бывает, что пропускной способности не хватает. Если у вас нет гигабитной сетевой карты (или порта на свиче), не расстраивайтесь. Можно вставить в компьютер еще 1-2 сетевухи и объединить интерфейсы в один. Данная операция называется bonding. Так как под рукой у меня только Gentoo, то могу привести алгоритм объединения интерфейсов только для него.
...
[Слишком большой объем текста. Скрыт. Для просмотра см. продолжение
]
 
----* Дублирование сервера с использованием VRRP (доп. ссылка 1)   Автор: Ron McCarty  [комментарии]
 
Имеется два сервера - первичный и запасной. При помощи протокола VRRP (Virtual
Router Redundancy Protocol)
при крахе первичного сервера, автоматически поднимаем его MAC и IP на запасном.

Устанавливаем vrrpd (http://sourceforge.net/projects/vrrpd/).

На первичном сервере выполняем:

   vrrpd -i eth0 -p 25 -v 1 192.168.1.1

На запасном:

  vrrpd -i eth0 -p 24 -v 1 192.168.1.1

,где
    -i eth0  - имя интерфейса на котором будет установлен IP 192.168.1.1
    -v 1 - (virtual router) номер VRRP связки 
            (в локальной сети может быть несколько резервирующих друг-друга систем)
   -p N - приоритет, машина с меньшим весом будет активирована, только при недоступности системы с большим весом.

При тестировании можно использовать tcpdump -vv proto 112
 
----* Как привязать IP к MAC-адресу сетевой карты (доп. ссылка 1)   Автор: Dima I. Allaverdov  [комментарии]
 
arp -s ваш.ip.адрес mac.адрес.сетевой.карты pub
Пример: /usr/sbin/arp -s 192.168.0.10 0:0:e7:ac:4c:63 pub

Начиная с FreeBSD 4.10 в ifconfig доступна опция staticarp, 
заставляющий интерфейс только отвечать на ARP запросы для привязанных к нему адресам.
 

 Версия для печати





Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру