FAQ FreeBSD - Сеть и протоколы
ОГЛАВЛЕНИЕ
10. Сеть и протоколы
10.1. Не могу заставить работать ppp. Что я делаю не так?
Первым делом прочтите страницы справочника, посвящённые ppp, а также соответств
ующий раздел Руководства. Включите протоколирование командой
set log Phase Chat Connect Carrier lcp ipcp ccp command
Эта команда может быть набрана в командной строке ppp или она может находиться
в конфигурационном файле /etc/ppp/ppp.conf (начало секции default - лучшее для
неё место. Удостоверьтесь, что файл /etc/syslog.conf содержит строки
!ppp
*.* /var/log/ppp.log
и файл /var/log/ppp.log существует. Теперь вы сможете найти полную информацию о
происходящем в файле протокола. Не беспокойтесь, если не всё вам будет там
понятно. Если вы будете пользоваться чьей-то помощью, протокол вам пригодится.
Если ваша версия ppp не понимает команду set log, вы должны скачать последнюю в
ерсию. Она рассчитана на FreeBSD версий 2.1.5 и выше.
10.2. Ppp просто зависает, когда я его запускаю
Обычно это происходит, когда не может быть определено имя вашего хоста.
Наилучший способ исправить это - удостовериться, что файл /etc/hosts
используется вашим ресолвером. Отредактируйте файл /etc/host.conf, поместив на
первое место строчку hosts. Затем просто добавьте записи о вашей машине в файл
/etc/hosts. Если у вас нет локальной сети, измените строку localhost:
127.0.0.1 foo.bar.com foo localhost
В противном случае просто добавьте ещё одну запись о вашем хосте. Обратитесь к
соответствующим страницам справочника за подробным описанием.
Если вы выполнили эти указания, вы сможете успешно выполнить команду ping -c1
`hostname`.
10.3. Ppp не звонит в режиме -auto
Во-первых, проверьте, что у вас есть маршрут по умолчанию. Выполнив команду
netstat -rn, вы должны увидеть две строки такого вида:
Destination Gateway Flags Refs Use Netif Expire
default 10.0.0.2 UGSc 0 0 tun0
10.0.0.2 10.0.0.1 UH 0 0 tun0
Здесь предполагается, что вы использовали адреса, приведённые в Руководстве,
Справочнике или файле ppp.conf.sample. Если у вас нет маршрута по умолчанию,
это может быть из-за использования старой версии ppp, которая не понимает слова
HISADDR в файле ppp.conf. Если ваша версия ppp из FreeBSD версий ранее чем
2.2.5, замените строку
add 0 0 HISADDR
на
add 0 0 10.0.0.2
Другой причиной отсутствия маршрута по умолчанию может быть то, что вы ошибочно
установили маршрут по умолчанию в вашем файле /etc/rc.conf (этот файл назывался
/etc/sysconfig до 2.2.2-RELEASE), и вы пропустили строку
delete ALL
в ppp.conf. В таком случае обратитесь к соответствующему разделу Руководства.
10.4. Что означает сообщение No route to host?
Эта ошибка появляется из-за отсутствующего раздела
MYADDR:
delete ALL
add 0 0 HISADDR
в файле /etc/ppp/ppp.linkup. Он необходим, если ваш IP адрес выделяется
динамически или адрес маршрутизатора вам не известен. Если вы используете
интерактивный режим, вы можете набрать следующие команды после входа в пакетный
режим (пакетный режим идентифицируется заглавными буквами PPP в приглашении):
delete ALL
add 0 0 HISADDR
Обратитесь к разделу PPP и динамические IP адреса Руководства за подробной
информацией.
10.5. Соединение разрывается через 3 минуты
Таймаут для ppp по умолчанию равен 3 минутам. Это может быть изменено строкой
set timeout NNN
где NNN - время неактивности в секундах, после которого соединение закрывается.
Если NNN равно нулю, соединение никогда не разрывается по таймауту. Эту команду
можно поместить в файл ppp.conf или набрать ее в интерактивном режиме.
Изменение этого параметра также возможно при активном соединении, если
подключиться к сокету ppp сервера с помощью программ telnet или pppctl.
Обратитесь к страницам Справочника, посвящённым ppp.
10.6. Соединение разрывается при большой нагрузке
Если у вас включен Link Quality Reporting (LQR), возможно, что слишком много
пакетов LQR теряется в канале. Ppp делает вывод, что канал плох, и разрывает
соединение. В FreeBSD до версии 2.2.5 LQR было включено по умолчанию. Сейчас
оно по умолчанию выключено. LQR можно выключить строкой
disable lqr
10.7. Соединение разрывается в случайные промежутки времени
Иногда, на шумной линии или даже на линии с включенным режимом ожидания звонка,
ваш модем может вешать трубку, думая (совершенно напрасно), что потерял
несущую.
В большинстве модемов есть параметр, определяющий чувствительность к временной
потере несущей. Например, в модеме USR Sportster, это определяется значением
регистра S10 в десятых долях секунды. Чтобы сделать связь более устойчивой,
добавьте следующую последовательность посылок-ожиданий в строку набора:
set dial "...... ATS10=10 OK ......"
Обратитесь к руководству по вашему модему.