Чтение онлайн

ЖАНРЫ

Linux-сервер своими руками

Колисниченко Денис Николаевич

Шрифт:

Если ваша локальная сеть настроена для работы через Firewall, вы должны понизить значение MTU до 1452. При этом вы можете или установить значение MTU=1452 на всех интерфейсах сети или воспользоваться параметром рррое «-m 1412». Использовать этот параметр –m гораздо проще, но требует некоторого дополнительного процессорного времени.

Если вы хотите вручную конфигурировать все узлы вашей сети, то в Linux это можно сделать следующей командой, которую желательно поместить в сценарий загрузки системы:

ifconfig eth0 ratu 1452

Примечание. От Windows, сами понимаете — не уйдешь, поэтому дам пару советов по настройке и этой ОС. При этом вам придется изменить пару параметров в реестре:

Ключ:

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\NetTrans\xxxx] ххх — ID интерфейса

Параметр: MaxMTU

Тип: REG_SZ

Дополнительная информация по настройке операционной системы Windows находится по адресу: http://support.microsoft.com/support/kb/articles/q120/6/42.asp.

Если при установлении соединения вы получите

сообщение Message too long, то это значит, что надо еще уменьшить значение MTU, допустим с 1452 до 1412.

Для управления ADSL-соединением вы можете использовать следующие команды:

adsl-start — запуск adsl;

adsl-stop — останов adsl.

Вести статистику вашего ADSL-соединения вы можете с помощью стандартного сценария, который входит в состав пакета рррое. Для его работы необходим интерпретатор Perl.

7.5. Настройка выделенных линий

Протокол РРР может использоваться как для установления коммутируемых соединений, например dial-up, так и для организации выделенных (leased) линий. Для начала разберемся, что же такое выделенная линия? Сети с коммутацией пакетов (каналов) можно разделить на две группы: сети с динамической и постоянной коммутацией. В первом случае пользователь может установить соединение по собственной инициативе. Коммутация выполняется на время сеанса связи, а затем связь разрывается (по инициативе пользователя или по инициативе сервера). Во втором случае динамическая коммутация не осуществляется, а вместо этого пользователю (пользователям) разрешается заказать соединение на длительный период времени. Режим постоянной коммутации называется выделенной (dedicated) или арендуемой (leased) линией.

Будем считать, что необходимые вам пакеты уже установлены. Сам процесс установки пакетов ррр был описан в п. 7.3. Нужно также позаботиться о том, чтобы ядро поддерживало РРР. В большинстве случаев поддержка РРР уже встроена в ядро. Проверить наличие поддержки РРР можно с помощью команды:

dmesg | grep РРР

Предположим, вам нужно настроить два выделенных канала. Для определенности первый модем будет подключен к /dev/ttyS0, а второй — к /dev/ttyS1. Файл /etc/ppp/options будет содержать глобальные настройки. Файлы конфигурации для модемов /dev/ttyS0 и /dev/ttyS1 будут называться соответственно /etc/ppp/options.ttS0 и /etc/ppp/option.ttyS1. Отредактируйте файл /etc/ppp/options.ttyS0, как это показано в листинге 7.4.

Листинг 7.4. Файл/etc/ppp/options.ttyS0

# Устройство

/dev/ttyS0

# Скорость

57600

noauth

mru 1500

# ваш интерфейс: удаленный интерфейс

192.168.99.1:192.168.99.2

# маска подсети

netmask 255.255.255.0

bsdcomp 0

chap-interval 15

debug

crtscts

mtu 552

mru 552

–detach

С устройством и скоростью все понятно. Особое внимание обратите на следующую запись: 192.168.99.1:192.168.99.2. Между вашими модемами (собственно между «вашим» и тем, что на другой стороне) создается подсеть 192.168.99.0 (netmask 255.255.255.0). По окончанию конфигурирования выделенной линии вам нужно настроить маршрутизацию (см. man route). Если же линия у вас одна, то вы можете в конец файла /etc/options.ttyS0 добавить команду defaultroute. Эта запись добавляет маршрут в системную таблицу маршрутизации, используя удаленную сторону в качестве шлюза. Обычно эта запись удаляется при завершении соединения. Теперь разберемся со всеми остальными командами, задающими параметры соединения (см. табл. 7.2).

Параметры соединения Таблица 7.2 

Команда Описание
noauth He требует удаленную сторону назвать себя перед тем, как начнется обмен пакетами. Используйте параметр auth — если аутентификация нужна
crtscts Использовать аппаратное управление потоком данных (напр., RTS/CTS), чтобы управлять потоком данных на последовательном порту
xonxoff Использовать программное управление потоком данных (напр., XON/XOFF), чтобы управлять потоком данных на последовательном порту
mru n Устанавливает значение MRU [Maximum Receive Unit] в n байт при договоренности. Демон pppd запросит удаленную сторону отправлять пакеты не более чем по n байт. Минимальное значение MRU 128. Значение MRU по умолчанию 1500. Для медленных соединений рекомендуется 296 (40 байт для заголовка TCP/IP + 256 байт данных)
mtu n Устанавливает значение MTU [Maximum Transmition Unit) в n байт. Пока другая сторона не попросит меньшее значение при договоре о MRU, pppd будет требовать у сетевого кода ядра отправлять пакеты данных не более, чем по n байт через сетевой интерфейс РРР
chap-interval интервал С этой опцией pppd будет заново вызывать удаленную сторону каждые _интервал_ секунд
debug Увеличить
уровень отладки (то же что –d). Если эта опция есть, то pppd будет записывать в журнал все прибывшие и отправленные пакеты в читабельной форме. Пакеты будут регистрироваться в файлах протоколов через syslog. Эта информация может быть перенаправлена в файл соответствующей установкой /etc/syslog.conf. Если pppd скомпилирован с разрешенной extra-отладкой, он будет записывать сообщения в журнал, используя средство 1оса12 вместо daemon
– detach Не переходить в фоновый режим (иначе pppd будет это делать, только если указано последовательное устройство)

Оптимальными значениями mru и mtu являются 542 и 552 соответственно. Однако, для получения максимальной производительности, поэкспериментируйте со значениями этих параметров. Помимо вышеуказанных команд, для настройки ррр вы можете использовать команды, приведенные в табл. 7.3.

Дополнительные параметры соединения Таблица 7.3 

Команда Описание
connect программа Задает программу для настройки линии
disconnect программа Запустить данную программу после того, как pppd завершил связь
asyncmap В качестве значения данного параметра указывается async-карта символов – 32-bit hex; каждый бит – символ, который надо представить в виде escape-последовательности, чтобы pppd мог его принять. 0x00000001 – это маска для '\х01', а 0x80000000 – маска для '\x1f
local Не использовать линии управления модемом
modem Использовать линии управления модемом
lock Указывает, что демон pppd должен создать файл блокировки для последовательного порта
passive Разрешить опцию «passive» в LCP. С этой опцией pppd будет пытаться инициировать соединение; если ответ от другой стороны не принят, то pppd будет пассивно ожидать правильный LCP-пакет от другой стороны (вместо выхода, как делается без этой опции)
silent С этой опцией pppd не будет передавать LCP-пакеты для инициации соединения, пока не придет правильный LCP-пакет от другой стороны (как опция «passive» в старых версиях pppd)
– all Не разрешать договариваться о любых опциях LCP и IPCP (будут использоваться значения по умолчанию)
– am Запретить договариваться о asyncmap
– ip Не договариваться об IP-адресе (адрес должен быть указан или в options, или в командной строке)
– mru Запретить договариваться о MRU (Max Receive Unit)
– pc Запретить сжатие полей протокола
+pap РАР-аутентификация
– pap Отказаться от РАР-аутентификации
+chap СНАР-аутентификация
domain имя_домена Добавить имя домена к имени машины
name имя_машины Установить имя машины (в целях аутентификации)
user имя Установить имя пользователя для аутентификации этой машины на другой стороне, используя РАР. Нельзя использовать вместе с параметром name
login Использовать базу данных паролей для идентификации удаленной стороны, используя РАР
idle n Если соединение не используется в течение n секунд, то оно будет разорвано
speed Задает скорость обмена с модемом (пропускную способность порта)

После того как настройка ррр завершена, можно перейти к редактированию inittab. Добавьте в /etc/inittab следующие строки:

7:2345:respawn:/usr/sbin/pppd file /etc/ppp/options.0 > /var/log/pppS0.log

8:2345:respawn:/usr/sbin/pppd file /etc/ppp/options.1 > /var/log/pppS1.log

7 и 8 — это порядковые номера, 1…6 уже заняты для системных консолей ttyl-tty6. 2345 — уровни запуска. Весь inittab должен выглядеть примерно так, как это показано в листинге 7.5:

Примечание. В процессе загрузки операционная система Linux вызывает фоновый процесс init (PID=1), который обрабатывает конфигурационный файл /etc/inittab и затем запускает сценарий запуска системы /etc/rс.d/rc.sysinit. Этот сценарий, в зависимости от режима запуска (уровня выполнения), запускает разные демоны (фоновые задачи). Уровень выполнения задается в файле inittab. В нашем примере (см. листинг 7.5) уровнем выполнения по умолчанию является третий уровень. Перейти из одного уровня на другой можно с помощью команды init N, где N — номер уровня. Подробнее об этом и многом другом, связанном с начальной загрузкой системы, вы можете прочитать в п 5.5.

Поделиться с друзьями: