Поиск

Газета FOSS News

16 ноября 2011

О газете
Архив
Авторам
Рекламодателям

 

Кабинет читателя

Вход в систему
Введите имя пользователя и пароль для входа в систему:

4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4

Скрытые возможности при работе с сетевым интерфейсом

02.04.10 /

Иногда бывает надобность указывать специфические параметры сетевого интерфейса при загрузке. Чаще всего это делается через /etc/rc.conf. Но проблема файла /etc/rc.conf состоит в том, что не всегда можно описать требуемые параметры. Яркий пример: смена МАС-адреса сетевой карты и следующее присвоение IP-адреса интерфейсу. Эта операция не может быть выполненена через файл /etc/rc.conf. Даже если вы напишите следующее:

ifconfig_rl0="ether XX:XX:XX:XX:XX:XX"
ifconfig_rl0="10.10.10.10/24"

сетевому интерфейсу будет присвоен указанный IP-адрес, но MAC-адрес останеться прежний, не изменённый. Специфика файла /etc/rc.conf такова: применяется только последняя конфигурация, остальные же просто игнорируются. К примеру, если написать такое:

ifconfig_rl0="10.10.10.10/24"
ifconfig_rl0="10.11.10.10/24"
ifconfig_rl0="10.12.10.10/24"
ifconfig_rl0="10.13.10.10/24"

то в итоге интерфейсу rl0 будет присвоен адрес 10.13.10.10/24.
Что же делать, если действительно нужно больше, чем это может позволяет сделать rc.conf. На помощь приходят стартовые скрипты (из каталогов /etc/rc.d, /usr/local/etc/rc.d) и файл /etc/rc.local (в который можно написать какие угодно команды и все они выполнятся). Однако, разработчки сделали исключение для настройки сети. Для этого, создаётся специальный файл с именем start_if.{IFNAME} в каталоге /etc/, в который пишутся команды для сетевых интерфейсов, где IFNAME - имя сетевого интерфейса.

Пример.

Создаём файл /etc/start_if.vr0 такого содержания:

ifconfig vr0 ether 00:00:00:00:11:11
ifconfig vr0 1.1.1.1/32

перегружаем сервер, и смотрим:

$ ifconfig vr0
vr0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
        options=2808<VLAN_MTU,WOL_UCAST,WOL_MAGIC>
        ether 00:00:00:00:11:11
        inet 1.1.1.1 netmask 0xffffffff broadcast 1.1.1.1
        media: Ethernet autoselect (none)
        status: no carrier

На мой взгляд преимущества файла start_if.{IFNAME} на лицо.


Автор: skeletor

По материалам:

Газета FOSS News #3(15)

Loading ...

Комментарии

Добавить комментарий

* - необходимое для заполнения поле

*




Изображение CAPTCHA для предотвращения спама
Если слово непонятно, нажмите здесь..
*
*
Нет комментариев
 
© 2004-2009 Журнал "Root UA" - свидетельство СМИ: КВ №14786-3757Р
Газета "FOSS News" - свидетельство СМИ: ОД №1355-236-Р
При использовании материалов портала ссылка на Root.UA обязательна, для интернет-изданий – гиперссылка, не закрытая для индексации поисковыми системами.

sitenews