Etcnet: различия между версиями
Нет описания правки |
Нет описания правки |
||
Строка 38: | Строка 38: | ||
С версии 0.7.10 [http://etcnet.org/ /etc/net] управляет ifplugd самостоятельно. Это было сделано для лучшей интеграции пакетов и для возможности мониторить несколько интерфейсов одновременно. Для корректного использования ifplugd необходимо выполнить <tt>chkconfig ifplugd off</tt> и назначить переменную USE_IFPLUGD в файлах options соответствующих интерфейсов. Комментарий по данной переменной дан в файле <tt>/etc/net/ifaces/default/options-eth</tt>. | С версии 0.7.10 [http://etcnet.org/ /etc/net] управляет ifplugd самостоятельно. Это было сделано для лучшей интеграции пакетов и для возможности мониторить несколько интерфейсов одновременно. Для корректного использования ifplugd необходимо выполнить <tt>chkconfig ifplugd off</tt> и назначить переменную USE_IFPLUGD в файлах options соответствующих интерфейсов. Комментарий по данной переменной дан в файле <tt>/etc/net/ifaces/default/options-eth</tt>. | ||
<div id="ppp"></div> | <div id="ppp"></div>==== Как настроить интерфейс PPP ==== | ||
Для настройки обычного модемного PPP-соединения вам нужно: | |||
# Создать каталог конфигурации, например, <tt>/etc/net/ifaces/ppp5</tt>. Сейчас вы не можете использовать что-либо кроме pppN или pppNN или pppNNN и т.п. | |||
# Прочесть <tt>/etc/net/ifaces/default/options-ppp</tt> | |||
# Создать файлы конфигурации. Скорее всего вам понядобятся pppconnect и pppdisconnect, чтобы pppd знал, как дозваниваться и соединяться. Это скрипты для программы chat(8). Кроме этого в файле pppoptions можно (а зачастую нужно) перечислить опции pppd(8), определяющие способ авторизации, скорость и название порта и т.п. | |||
# Заполнить <tt>/etc/ppp/chap-secrets</tt> или <tt>/etc/ppp/pap-secrets</tt>. | |||
<div id="ppp-pptp-pppoe"></div> | |||
==== Как настроить интерфейс PPtP или PPPoE ==== | |||
Хотя PPtP-соединения могут быть настроены и как обычные PPP-соединения, в [http://etcnet.org/ /etc/net] версии 0.7.10 для удобства пользователей была введена опция PPPTYPE. Она может принимать следующие значения: | |||
* dialup: обычный PPP-интерфейс. | |||
* pppoe: интерфейс PPPoE. Для такого интерфейса необходимо в опции HOST указывать имя Ethernet-интерфейса, через который будет производиться работа PPPoE. Побочным положительным эффектом будет то, что этот интерфейс будет при необходимости автоматически подниматься (см. ##FTN requires##). | |||
* pptp: интерфейс PPtP. Для такого интерфейса необходимо в опции PPTP_SERVER указывать имя хоста или IP-адрес PPtP-сервера, к которому будет производиться подключение. Обратите внимание, что хотя такие интерфейсы не имеют опции HOST, в большинстве случаев имеет смысл указать в опции REQUIRES интерфейс, через который будет достижим хост, указанный в PPTP_SERVER. | |||
См также ##FTN vpn##) | |||
<div id="DNSandPPP"></div> | |||
==== DNS и PPP-соединения ==== | |||
<div style="display: inline; color: red;">Внимание: здесь описывается проблема, которая на самом деле была создана, а не решена -- бишь ради специфики [https://bugzilla.altlinux.org/show_bug.cgi?id=13789 kppp] была создана чётная ошибка в [https://bugzilla.altlinux.org/show_bug.cgi?id=13773 ppp-common]; последняя уже исправлена.</div> | |||
Довольно долгое время существовала проблема неправильной модификации /etc/resolv.conf при установке PPP-соединений: [https://bugzilla.altlinux.org/show_bug.cgi?id=4249 https://bugzilla.altlinux.org/show_bug.cgi?id=4249]. Сейчас она решена, но необходимо дать пояснения. Прежде всего убедитесь, что у вас в файле <tt>/etc/resolv.conf</tt> есть строка <pre># ppp temp entry</pre> | |||
Если этой строки нет, то в файле не будут модифицироваться строки nameserver, если только какая-нибудь программа типа kppp это не сделает специально. Если такая строка есть, то <tt>/etc/resolv.conf</tt> будет модифицироваться в зависимости от значения булевской переменной RESOLV_MODS, которую необходимо задавать в файле <tt>/etc/sysconfig/network</tt>.// | |||
<div style="display: inline; color: red;">Внимание</div>: при ppp-common >= 0.4-alt1 строки <tt># ppp temp entry</tt> в <tt>/etc/resolv.conf</tt> при отсутствии PPP-соединения, поднятого какой-либо "звонилкой", запущенной от рута -- быть '''не должно'''! Если есть -- уберите, чтобы <tt>/etc/ppp/ip-up</tt> занимался обновлением записей про DNS в этом файле. | |||
<div id="restartreload"></div> | |||
==== restart, reload и другие команды ==== | |||
У сервиса network имеется ряд команд: | |||
* start: запустить все стационарные интерфейсы. hotplug-интерфейсы будут сконфигурированы при поступлении соответствующего вызова от hotplug. | |||
* startwith <имя профиля>: start с указанным именем профиля, а не определённым автоматически. | |||
* stop: остановить все стационарные интерфейсы. hotplug-интерфейсы будут расконфигурированы при поступлении соответствующего вызова от hotplug. | |||
* stopwith <имя профиля>: stop с указанным именем профиля, а не определённым автоматически. | |||
* restart: эквивалентно stop с последующим start, как и в большинстве других сервисов. | |||
* restartwith <имя профиля>: рестарт в контексте указанного профиля, эквивалентно stopwith <имя профиля> и startwith <имя профиля>. | |||
* switchto <имя профиля>: переключение в указанный профиль, эквивалентно stop и startwith <имя профиля>. | |||
* reload: семантически обозначает "актуализировать текущую конфигурацию". Для всех сконфигурированных в настоящий момент интерфейсов будет выполнена реконфигурация при наличии конфигурации. | |||
* check: автоматическая проверка конфигурационной базы. | |||
<div id="bootproto"></div> |
Версия от 21:01, 30 июля 2008
Подсказки пользователю /etc/net
- Раскроем тему (отдельные страницы)
Быстрый старт
Где брать информацию
Обращаю внимание, что начиная с версии 0.8.0 документация /etc/net переместилась из комментариев, рассеянных по множеству файлов, в несколько man-страниц. Список всех файлов документации пакета можно получить командой
rpmquery -d etcnet
Как быстро настроить одну карту Ethernet
- Создайте каталог /etc/net/ifaces/eth0. Это собственный каталог конфигурации данного интерфейса, в нём будут храниться файлы с настройками.
- Определите, какой модуль необходим для вашей карты. Для этого можно использовать lspci, lspcidrake, pciscan. Затем
- В каталоге конфигурации создайте файл options, в который впишите строку
MODULE=<имя модуля>
. Больше ничего пока не добавляйте. - Выясните, какой IP-адрес должен быть назначен вашему интерфейсу. Если интерфейс конфигурируется по DHCP, то поместите в файл /etc/net/ifaces/eth0/options строку BOOTPROTO=dhcp и переходите к шагу 7. Замечание: в ряде случаев может также понадобиться
DHCP_HOSTNAME=<имя машины без домена>
. Эта опция описана в man-странице etcnet-options. Также необходимо, чтобы была пустая строка в конце файла. - У вашего интерфейса есть два взаимосвязанных атрибута: IP-адрес и сетевая маска. Текущие назначенные адреса можно просмотреть командой /sbin/ip address show. Скорее всего вы увидите, что интерфейс-петля lo уже сконфигурирован с адресом 127.0.0.1/8. Создайте файл /etc/net/ifaces/eth0/ipv4address, в который поместите IP-адрес с длиной маски, например
10.0.0.20/24
. Наиболее популярны маски /24 и /30. Для справки приводится##LINKTOFTN ftnd1## таблица соответствия сетевых масок в различных нотациях. - Выясните адрес вашего шлюза (маршрут по умолчанию). Например, этот IP-адрес -- 10.0.0.254. Создайте файл /etc/net/ifaces/eth0/ipv4route, в который поместите строку
default via 10.0.0.254
- Убедитесь, что всё выполнено правильно, выполнив команду service network restart. Ваш интерфейс должен быть успешно сконфигурирован. Если вы конфигурировали использование DHCP, но адрес интерфейсу не назначается, просмотрите /var/log/messages.
Как настроить ifplugd
С версии 0.7.10 /etc/net управляет ifplugd самостоятельно. Это было сделано для лучшей интеграции пакетов и для возможности мониторить несколько интерфейсов одновременно. Для корректного использования ifplugd необходимо выполнить chkconfig ifplugd off и назначить переменную USE_IFPLUGD в файлах options соответствующих интерфейсов. Комментарий по данной переменной дан в файле /etc/net/ifaces/default/options-eth.
==== Как настроить интерфейс PPP ====
Для настройки обычного модемного PPP-соединения вам нужно:
- Создать каталог конфигурации, например, /etc/net/ifaces/ppp5. Сейчас вы не можете использовать что-либо кроме pppN или pppNN или pppNNN и т.п.
- Прочесть /etc/net/ifaces/default/options-ppp
- Создать файлы конфигурации. Скорее всего вам понядобятся pppconnect и pppdisconnect, чтобы pppd знал, как дозваниваться и соединяться. Это скрипты для программы chat(8). Кроме этого в файле pppoptions можно (а зачастую нужно) перечислить опции pppd(8), определяющие способ авторизации, скорость и название порта и т.п.
- Заполнить /etc/ppp/chap-secrets или /etc/ppp/pap-secrets.
Как настроить интерфейс PPtP или PPPoE
Хотя PPtP-соединения могут быть настроены и как обычные PPP-соединения, в /etc/net версии 0.7.10 для удобства пользователей была введена опция PPPTYPE. Она может принимать следующие значения:
- dialup: обычный PPP-интерфейс.
- pppoe: интерфейс PPPoE. Для такого интерфейса необходимо в опции HOST указывать имя Ethernet-интерфейса, через который будет производиться работа PPPoE. Побочным положительным эффектом будет то, что этот интерфейс будет при необходимости автоматически подниматься (см. ##FTN requires##).
- pptp: интерфейс PPtP. Для такого интерфейса необходимо в опции PPTP_SERVER указывать имя хоста или IP-адрес PPtP-сервера, к которому будет производиться подключение. Обратите внимание, что хотя такие интерфейсы не имеют опции HOST, в большинстве случаев имеет смысл указать в опции REQUIRES интерфейс, через который будет достижим хост, указанный в PPTP_SERVER.
См также ##FTN vpn##)
DNS и PPP-соединения
Довольно долгое время существовала проблема неправильной модификации /etc/resolv.conf при установке PPP-соединений: https://bugzilla.altlinux.org/show_bug.cgi?id=4249. Сейчас она решена, но необходимо дать пояснения. Прежде всего убедитесь, что у вас в файле /etc/resolv.conf есть строка
# ppp temp entry
Если этой строки нет, то в файле не будут модифицироваться строки nameserver, если только какая-нибудь программа типа kppp это не сделает специально. Если такая строка есть, то /etc/resolv.conf будет модифицироваться в зависимости от значения булевской переменной RESOLV_MODS, которую необходимо задавать в файле /etc/sysconfig/network.//
: при ppp-common >= 0.4-alt1 строки # ppp temp entry в /etc/resolv.conf при отсутствии PPP-соединения, поднятого какой-либо "звонилкой", запущенной от рута -- быть не должно! Если есть -- уберите, чтобы /etc/ppp/ip-up занимался обновлением записей про DNS в этом файле.
restart, reload и другие команды
У сервиса network имеется ряд команд:
- start: запустить все стационарные интерфейсы. hotplug-интерфейсы будут сконфигурированы при поступлении соответствующего вызова от hotplug.
- startwith <имя профиля>: start с указанным именем профиля, а не определённым автоматически.
- stop: остановить все стационарные интерфейсы. hotplug-интерфейсы будут расконфигурированы при поступлении соответствующего вызова от hotplug.
- stopwith <имя профиля>: stop с указанным именем профиля, а не определённым автоматически.
- restart: эквивалентно stop с последующим start, как и в большинстве других сервисов.
- restartwith <имя профиля>: рестарт в контексте указанного профиля, эквивалентно stopwith <имя профиля> и startwith <имя профиля>.
- switchto <имя профиля>: переключение в указанный профиль, эквивалентно stop и startwith <имя профиля>.
- reload: семантически обозначает "актуализировать текущую конфигурацию". Для всех сконфигурированных в настоящий момент интерфейсов будет выполнена реконфигурация при наличии конфигурации.
- check: автоматическая проверка конфигурационной базы.