IP-Маскарадинг+Napster мини-HOWTO

John E. Danner

Перевод: Станислав Рогин, SWSoft Pte Ltd.

версия 1.6, 11 Апреля 2000 года

Этот мини-HOWTO описывает механизм использования системы Napster пользователями, находящимися за IP маскарадинг-firewall.


Для информации о системе Napster, обращайтесь на ее Официальную Веб-Страницу


1. ОТВЕТСТВЕННОСТЬ

Для того, чтобы Napster работал правильно, необходимо создать обходной путь в системе вашего IP-маскарадинга. Это может повлечь за собой возможные проблемы безопасности. К сожалению, я не могу взять на себя ответственность за это. Поэтому, если вы что-то сделаете, а потом у вас из-за этого все сгорит...то это не моя вина. Хорошо...перейдем к главному...


2. ВВЕДЕНИЕ

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


3. ПЕРЕД НАЧАЛОМ РАБОТЫ

Я проверил работу моего "обходного пути" со следующими параметрами:

  1. Napster версия 2.0 Beta 5a (для Windows), см. Официальную страницу Napster

  2. Один внешний IP адрес выхода в Интернет.

  3. В настоящий момент 6 компьютеров работают за IP-маскарадингом, 4 из них используют Napster.

  4. Установлен Linux с ядром версии 2.2.12-20 (Дистрибутив RedHat v6.1)

  5. Утилита IPMASQADM версия 0.42, скачайте ее здесь здесь


4. ПОРЯДОК ДЕЙСТВИЙ

Первым делом убедитесь, что у вас такие же или более новые версии программ, (они указаны в предыдущей главе). Также убедитесь в том, что они корректно установлены.

  1. Установите Napster на Windows-машинах клиентов

  2. После установки Napster и настройки всех установок пользователей, эта версия начнет процедуру под названием "Finding Acceptable Local Data Port" (поиск приемлимого локального порта данных), и через короткое время появится сообщение об ошибке. Внимание: если у вас уже установлен Napster версии 2.0 beta 5a, тогда в меню "Файл" (File) выберите "Свойства" (Properties).

  3. Здесь выберите второй пункт "Я не использую Firewall или мой Firewall астроен - Использовать порт TCP:" (I am not behind a firewall or I configured my firewall - Use TCP port:)

  4. Введите уникальный номер порта. Каждому компьютеру, использующему Napster, нужно будет сопоставить свой номер порта. Самое простое - использовать последнюю цифру IP-адреса. Например: если адрес компьютера 192.168.1.2, то наиболее просто будет запомнить число 6702. Внимание: убедитесь в том, что вы не используете уже занятые номера портов (например 21, 110, и т.п....полный список находится в файле /etc/services)

  5. Повторите пункты 1 - 4 для всех систем, которые будут использовать Napster.

  6. Теперь войдите в вашу систему, осуществляющую IP-маскарадинг, и измените файл стартовой конфигурации (у меня это /etc/rc.d/rc.local) Следующие команды проводят соединение к клиентским частям Napster на машинах, находящихся за вашим IP-маскарадингом. (добавьте их в файл стартовой конфигурации - необходимо добавить по одной команде для каждой машины, использующей Napster):

    /usr/sbin/ipmasqadm portfw -a -P tcp -L xxx.xxx.xxx.xxx 6702 -R 192.168.1.2 6702
    /usr/sbin/ipmasqadm portfw -a -P tcp -L xxx.xxx.xxx.xxx 6703 -R 192.168.1.3 6703
    /usr/sbin/ipmasqadm portfw -a -P tcp -L xxx.xxx.xxx.xxx 6704 -R 192.168.1.4 6704
    /usr/sbin/ipmasqadm portfw -a -P tcp -L xxx.xxx.xxx.xxx 6705 -R 192.168.1.5 6705
    Где XXX.XXX.XXX.XXX - это IP-адрес Linux-машины, осуществляющей IP-маскарадинг (Интернетовский IP-адрес). Внимание: Если у вас трудности с утилитой IPMASQADM или с IP-маскарадингом вообще, то смотрите IPMASQ-HOWTO. Этот документ написан для тех, у кого системы работают правильно. В документе IPMASQ-HOWTO подробно описывается система переадресации портов и IP-маскарадинга вообще.


5. ДИНАМИЧЕСКИЕ IP АДРЕСА (Dial-up или DHCP)

Прочитайте внимательно эту главу и главу "Порядок действий", если ваши IP-адреса меняются при каждом вашем подключении к Интернету.

Спасибо Peter Illmayer за то, что дал мне этот скрипт : (Это лучше всего работает у тех, у кого динамические IP адреса...) В debian, я создал файл переадресаций (forward) в /etc/ppp/ip-up.d и добавил туда следующие строки

#!/bin/sh
ppp_ip="`/sbin/ifconfig ppp0 | grep 'inet addr' | awk '{print $2}' | sed -e
's/.*://'`"
/usr/sbin/ipmasqadm portfw -f
/usr/sbin/ipmasqadm portfw -a -P tcp -L ${ppp_ip} 6702 -R 192.168.0.2 6702
Это было в Linux-е с ядром версии 2.2.x kernel, с установленной утилитой ipmasqadm и с соответствующими скомпилированными модулями ядра. Charles J. Fisher подсказал, что подобный скрипт может быть использован и в случае применения DHCP: просто добавьте следующие строки в скрипт, запускающий DHCP, после того, как ваша машина уже получила IP-адрес.
net_ip="`ifconfig eth0 | awk '/inet/ {sub(/addr:/,"",$2); print $2}'`"
/usr/sbin/ipmasqadm portfw -f
/usr/sbin/ipmasqadm portfw -a -P tcp -L ${net_ip} 6702 -R 192.168.1.2 6702
Конечно, чем больше машин используют Napster за вашим IP-маскарадингом, тем больше портов вам придется перенаправить.


6. РЕЗУЛЬТАТ

Подобная система позволит Napster-у работать за машиной с IP-маскарадингом. Надеюсь, что эти советы помогут вам работать так же хорошо, как помогли мне! Пожалуйста, отправляйте комментарии/предложения/претензии по адресу [email protected]


7. ПОДДЕРЖКА ЭТОГО ДОКУМЕНТА

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


8. Copyright and License

Copyright (c) 2000 by John E. Danner

Please freely copy and distribute (sell or give away) this document in any format. It's requested that corrections and/or comments be fowarded to the document maintainer. You may create a derivative work and distribute it provided that you:

1.Send your derivative work (in the most suitable format such as sgml) to the LDP (Linux Documentation Project) or the like for posting on the Internet. If not the LDP, then let the LDP know where it is available.

2.License the derivative work with this same license or use GPL. Include a copyright notice and at least a pointer to the license used.

3.Give due credit to previous authors and major contributors.

If you're considering making a derived work other than a translation, it's requested that you discuss your plans with the current maintainer.


9. Авторские права

Авторские права на русский перевод этого текста принадлежат © 2000 SWSoft Pte Ltd. Все права зарезервированы.

Этот документ является частью проекта Linux HOWTO.

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

Все переводы и производные работы, выполненные по документам Linux HOWTO, должны сопровождаться этой заметкой об авторских правах. Это делается в целях предотвращения случаев наложения дополнительных ограничений на распространение документов HOWTO. Исключения могут составить случаи получения специального разрешения у координатора Linux HOWTO, с которым можно связаться по адресу приведенному ниже.

Мы бы хотели распространить эту информацию по всем возможным каналам. Но при этом сохранить авторские права и быть уведомленными о всех планах распространения HOWTO. Если у вас возникли вопросы, пожалуйста, обратитесь к координатору проекта Linux HOWTO по электронной почте: или к координатору русского перевода Linux HOWTO компании SWSoft Pte Ltd. по адресу