Next Previous Contents

## 13. Настройка PPP для поддержки IPX

Новые версии pppd, демона PPP для Linux, имеют поддержку, которая позволит вам переносить пакеты IPX через последовательные соединения PPP. Вам необходим по крайней мере демон версии `ppp-2.2.0d`. Смотрите PPP-HOWTO для детальной информации о том где найти его. При компиляции pppd вы должны убедиться что вы разрешили поддержку IPX добавив следующие две строки:

> `

>     IPX_CHANGE = 1
>     USE_MS_DNS = 1

> `

в файл: `/usr/src/linux/pppd-2.2.0f/pppd/Makefile.linux`.

`IPX_CHANGE` настраивает поддержку IPX в PPP. Определение `USE_MS_DNS` позволяет машинам с Microsoft Windows95 делать Name Lookups (Поиск Имен).

Настоящий фокус чтобы заставить это все работать -- это знание как настраивать демона.

Существует много способов настройки, но я опишу только два о которых я получил какую-то информацию. Я никогда не пытался сделать это, так что рассматривайте это раздел как экспериментальный, и если у вас что-то получится дайте мне знать.

## 13.1 Настройка сервера IPX/PPP

Первая вещь которую вам нужно сделать это настроить вашу Linux-машину как сервер IP/PPP. Не паникуйте. Это не так трудно. Далее, следуйте инструкциям в PPP-HOWTO и все должно быть ok. Когда вы сделаете это есть несколько простых изменений, которые вам нужны чтобы заставить работать IPX на той же конфигурации.

### Первые шаги

Один из первых шагов которые вы должны сделать -- это настройка вашей Linux машины как маршрутизатора IPX, как это описано в соответствующем разделе выше в этом документе. Вам не нужно использовать команду ipx_route для интерфейса `ppp` потому-что pppd сам настроит это для вас как он это делает с IP. Когда у вас запущен демон ipxd он сам будеи автоматически определять любые новые интерфейсы IPX и распространять маршруты для них. В этом случае ваша машина будет видна другим машинам автоматически при подсоединении.

### Дизайн

Когда вы работаете как сервер, то вы несете ответственность за назначение сетевых адресов на каждое PPP-соединение, когда оно установлено. Это важный вопрос, каждое PPP-соединение будет являться сетью IPX и должно иметь уникальный сетевой адрес IPX. Это означает, что вы должны решить как вы будете назначать адреса и какими они будут. Простое решение заключается в выделении одного сетевого адреса IPX на каждое последовательное устройство, которое будет поддерживать IPX/PPP. Вы можете выдавать сетевые адреса IPX основанные на идентификаторе подключающегося пользователя, но я не вижу особенно хорошей причины чтобы делать это.

Я буду предполагать что у вас это сделано, и что вы имеете два последовательных устройства (модема), которые вы будете использовать. Адреса которые я присвоил в этом примере следующие:

> `

>     устройство  Сетевой адрес IPX
>     ------      ------------------
>     ttyS0       0xABCDEF00
>     ttyS1       0xABCDEF01

> `

### Настройка pppd.

Настройте ваш файл `/etc/ppp/options.ttyS0` как показано:

> `

>     ipx-network 0xABCDEF00
>     ipx-node 2:0
>     ipxcp-accept-remote

> `

и ваш файл `/etc/ppp/options.ttyS1` как:

> `

>     ipx-network 0xABCDEF01
>     ipx-node 3:0
>     ipxcp-accept-remote

> `

Это скажет pppd выделить соответствующий сетевой адрес IPX для соединения когда оно установлено, установить номер локального узла в `2` или `3` и позволит удаленному узлу переписать номер удаленного узла в тот который ему нужен. Заметим сто каждый из этих узлов являются шестнадцатиричными числами и требуется `0x` а начале сетевого адреса, но не требуется в начале адреса узла.

Существуют другие места в которых эта информация может быть настроена. Если вы имеете только один модем, то запись должна быть расположена в файле `/etc/ppp/options`. В других случаях эта информация может быть передана через командную строку pppd.

### Проверка настройки сервера

Для проверки настройки сервера вам необходим уже работающий клиент. Когда клиент подсоединяется, входит в систему и запустится pppd, то он присвоит сетевой адрес, проверьте номер узла клиента этого сервера и согласуете номера узлов клиентов. Когда это будет выполнено и после того как ipxd определит новый интерфейс, клиент сможет устанавливать соединения IPX с удаленными машинами.

## 13.2 Настройка клиента IPX/PPP

В настройке клиента необходимость настройки вашей Linux-машины как маршрутизатора IPX зависит от того имеете ли вы локальную сеть для которой вы хотите выступать как маршрутизатор или нет. Если у вас автономная машина, подключенная к серверу IPX/PPP, то вам нет необходимости запускать ipxd, но если у вас есть локальная сеть и вы хотите чтобы все машины в этой сети могли использовать IPX/PPP маршрутизацию, то вы должны настроить и запустить ipxd как описано. Эта настройка более проста потому-что у вас нет множественных последовательных устройств, которые необходимо настраивать.

### Настройка pppd

Простейшая конфигурация это такая, которая позволяет серверу обеспечивать всю информацию о настройке сети IPX. Эта конфигурация должна быть совместимой с конфигурацией сервера, описанной выше.

Далее вам необходимо добавить некоторые опции в ваш файл `/etc/ppp/options`:

> `

>     ipxcp-accept-network
>     ipxcp-accept-remote
>     ipxcp-accept-local

> `

Эти опции говорят pppd полностью работать пассивно и принимать все настроечные детали от сервера. Вы можете установить значения по умолчанию для серверов, которые не обеспечивают эти детали добавлением записей `ipx-network` и `ipx-node` сходных с конфигурацией сервера.

### Тестирование клиента IPX/PPP

Для тестирования клиента вам необходим работающий сервер к которому можно подключиться. После того как вы подключились и запустился `pppd` вы должны увидеть детали настройки IPX на вашем устройстве `ppp0` когда вы запустите команду ifconfig и вы должны мочь использовать ncpmount.

Я не уверен должны ли вы добавлять маршруты IPX вручную, чтобы достичь удаленного файлового сервера. Вероятно да. Если кто-нибудь запустит такую конфигурацию сообщите мне я буду благодарен.

Next Previous Contents