Настройка админовской программы для инет кафе под АСТЕРОМ.

Что вообще можно делать с АСТЕР? Как правильно организовать работу и развлечения? Kак заставить игры, приложения и оборудование работать под АСТЕР так, как нужно именно вам? Поделитесь вашим опытом, выскажите идеи или задайте вопросы другим пользователям.

Модератор: mercenary

mercenary
Сообщения: 387
Зарегистрирован: Пн апр 07, 2008 11:45
Откуда: Украина , Полтава
Контактная информация:

Сообщение mercenary » Пн дек 22, 2008 21:50

2 Дудаевский
просьба не обижатся за шутку , но объясните мне , в какую сторону света надо плясать шаманские пляски и каких размеров нужен бубен , чтобы запустить программу ***. Я по прилагаемым инструкциям этого сделать не смог .... Если она у Вас запускается , попробуйте сделать следуюшее : клиентским местам раздайте айпи-адреса (не создавая замыкания на себя) а админскому НЕ присваивайте адрес. Далее в настройках админской части - все как обычно - указывайте "присвоенные" айпи-адреса, а в настройках клиентской части - айпи-адрес САМОЙ машины (т.е. изначальный айпи-адрес).

2 АСТЕР-МАСТЕР
лопнуло терпение , решил дома на двух-местнике симитировать интернет-кафе (с жены брать деньги за пользование интернетом). Без раздачи айпи-адресов - все гут , все имеют интернет по полной ! Присваиваю хотя бы одному месту айпи-адрес АСТЕРовскими средствами - интернет имеет это место ! В смысле пропадает ... Причем пропадает как-то странно ... Я пользуюсь ю-торрентом , так вот ЗАКАЧКА прекращается , зато РАЗДАЧА увеличивается , хотя это может связано и с провайдером .... в любом случае - закачка - СТОП , раздача - ПОЛНЫЙ ВПЕРЕД. Пробовать с адаптерами замыкания на себя не могу , т.к. подключен к городской локальной сетке , через которую получаю и инет. Уже описывал , при включении адаптера - ложится все и сетка и инет.
Если нужно тесное взаимодействие - мой ящик - mercenary@omen.ru , аська - 344-486-819 , т.е. ничего не поменялось ...

Аватара пользователя
AsterMaster
ИБИК
Сообщения: 2222
Зарегистрирован: Сб фев 05, 2005 0:48
Откуда: Москва
Контактная информация:

Сообщение AsterMaster » Ср дек 24, 2008 0:27

Я здесь попробую изложить ту простейшую технологию, которая используется для разделения IP-адресов в АСТЕР, а вы, может, поможете мне переложить это на более доступный язык, так чтобы было понятно, что во всех случаях проблем с Интернетом и сетью при разделенных адресах эти проблемы обусловлены факторами, не имеющими отношения к АСТЕР. И эти проблемы в большинстве случаев решаемы (а в остальных случаях носят принципиальный характер), если грамотно, четко и достаточно полно сформулировать свои исходные данные и конечные цели, выполнить необходимые настройки с полным пониманием назначения и последствий каждого действия и исключить мешающие факторы.

С последними двумя моментами (с пониманием и мешающими факторами) я постараюсь помочь, для чего пишу нижеследующий текст. Можете прочитать его, если вам интересно, если хотите разобраться и не испытывать более проблем с настройкой, или хотя бы примите к сведению, что решение любой проблемы типа "после назначения адресов в АСТЕРе не пашет Интернет" должно начинаться с "грамотной, четкой и полной формулировки...".

_____________

АСТЕР выполняет функцию разделения IP-адресов только в применении к IP-протоколам TCP и UDP, только на сетевом уровне windows sockets и только в отношении пользовательских приложений (т.е. программ, запущенных под учетной записью какого-либо пользователя, но не в качестве системной службы). Исключительно в этих рамках пойдет дальнейшее объяснение.

Windows хранит список имеющихся на компьютере сетевых интерфейсов. Понятие "сетевой интерфейс" включает в себя сетевые карты, реальные и виртуальные, а также туннельные подключения (подключения удаленного доступа). К туннельным подключениям относятся все виды модемных подключений и подключения по протоколам виртуальных сетей типа VPN.

Сетевой интерфейс характеризуется известными параметрами: IP-адрес в сети, маска сети, определяющая диапазон допустимых в этой сети IP-адресов, адрес шлюза для адресации за пределами маски и адрес DNS-сервера для преобразования "понятных" символических адресов (доменных имен) в IP-адреса. Обязательными параметрами являются первые два. Один сетевой интерфейс может работать сразу в нескольких сетях, соответственно, ему может быть задано несколько адресов, масок, шлюзов и DNS-серверов. Список сетевых интерфейсов и их параметры можно просмотреть с помощью утилиты ipconfig (это утилита командной строки).

Информация из списка сетевых интерфейсов используется маршрутизатором Windows для определения, в какую сеть и через какой шлюз нужно направлять запросы по заданному адресу назначения. Таблицу маршрутизации можно просмотреть с помощью команды route print (так же из командной строки).

В список сетевых интерфейсов и в таблицу маршрутизации включаются только активные подключения: подключенные к сети сетевые карты и установленные туннельные подключения. Другими словами, компьютер "видит" только те сети, и "отзывается" только на те IP-адреса, которые соответствуют активным подключениям. Виртуальные сетевые адаптеры активны всегда.

Служба Network Adress Translation (NAT) - служба преобразования сетевых адресов - используется, с одной стороны, для развязки двух сетей, как правило, локальной и глобальной сети (как защита внутренней сети от несанкционированных внешних подключений), с другой - для сообщения двух сетей при отсутствии прямой маршрутизации между сетями (обычно для обеспечения доступа из локальной сети в глобальную сеть).

В понятиях NAT одна из сетей считается внутренней, другая - внешней. При передаче данных из внутренней сети во внешнюю NAT создает временный канал между сетями, который преобразует адрес во внутренней сети (IP-адрес и номер порта) в адрес во внешней сети. При этом преобразовании изменяется IP-адрес отправителя, и также может измениться его порт, если уже существует другой канал с таким же номером порта для другого IP-адреса. Данные, приходящие из внешней сети, проходят во внутреннюю сеть по существующему каналу с обратным преобразованием адреса или отбрасываются, если подходящего канала не существует. Таким образом обеспечивается защита внутренней сети: данные извне могут пройти NAT только по каналу, открытому по запросу из внутренней сети. При этом компьютеры во внутренней сети получают доступ во внешнюю сеть без необходимости резервирования IP-адресов во внешней сети для каждого компьютера; достаточно одного "внешнего" IP-адреса: NAT разделяет запросы по номерам портов, при необходимости изменяя их. Между сетями может быть создан постоянный канал, обеспечивающий преобразование заданного внутреннего адреса в заданный внешний и обратно и, соответственно, обеспечивающий предсказуемость внешнего адреса в исходящих запросах и доступность внутреннего адреса для подключений извне. Постоянный канал в понятиях NAT называется виртуальным сервером (virtual server) или перенаправлением портов (port forwarding).

По отношению к компьютеру в сети, NAT может быть внешней (работает на другом компьютере в этой же сети или внутри самостоятельного устройства-маршрутизатора) и тогда она выполняет роль шлюза, адрес которого мы указываем при настройке подключения через сетевую карту, или может быть внутренней, выполняющей преобразование адресов и пересылку данных между двумя сетевыми интерфейсами. Служба ICS Windows - Internet Connection Sharing (общий доступ к подключению к Интернету) - это внутренняя NAT в чистом виде.

Windows socket (сокет) - это системный объект, адресуемая точка в сети, средство взаимодействия сетевого приложения с сетью. Сетевое приложение создает нужное количество сокетов с помощью стандартных команд Windows sockets API. При создании сокет получает базовые характеристики: сетевой протокол с которым он будет работать (TCP, UDP) и адресную пару IP-адрес+порт, которые определяют место сокета среди всех доступных сетей. Эта адресная пара в нашем случае играет ключевую роль.

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

- заданный (т.е. известный приложению) порт, с одной стороны, обеспечивает возможность "слушать" сеть, т.е. принимать данные из сети без предварительного запроса (так называемые "входящие подключения"), поскольку отправитель заранее знает правильный номер порта. С другой стороны, затрудняет одновременную работу нескольких приложений, использующих один и тот же номер порта для своих сокетов;

- нулевой порт обеспечивает развязку сетевых приложений по номеру порта, потому что в этом случае система самостоятельно выбирает незанятый порт. Это позволяет без лишних проблем отправлять данные в сеть и получать данные в ответ, потому что выбранный системой номер порта передается вместе с исходящими данными как адрес отправителя. Поскольку номер порта, который выберет система, заранее не известен, сокет с нулевым портом не может использоваться для приема входящих подключений (впрочем, по факту создания сокета с нулевым портом можно запросить у системы параметры сокета, среди которых будет конкретный номера порта, действительный на всё время существования сокета и, соответственно, доступный для входящих подключений);

- нулевой IP-адрес обеспечивает сетевому приложению доступ ко всем имеющимся сетевым подключениям. При отправлении данных в сеть через сокет с нулевым IP-адресом, конкретную сеть выбирает маршрутизатор Windows на основании адреса назначения и содержимого таблицы маршрутизации. При этом в качестве адреса отправителя подставляется IP-адрес сетевого интерфейса, через который данные выходят в сеть (используется "основной", первый по списку IP-адрес, если сетевому интерфейсу назначено несколько IP-адресов). При приеме данных из сети маршрутизатор Windows направляет эти данные в сокет с нулевым IP-адресом, если номер порта этого сокета совпадает с номером порта в адресе получателя (и, конечно, если IP-адрес получателя совпадает с IP-адресом сетевого интерфейса, на который пришли данные). Таким образом, сокет с нулевым IP-адресом "виден" во всех сетях, к которым подключен компьютер, под своим номером порта. Поскольку сокет с нулевым IP-адресом отвечает всем IP-адресам всех сетевых интерфейсов, он монополизирует использование присвоенного ему номера порта, т.е. в системе не может существовать более сокетов с таким же номером порта, даже если им присваивать различные ненулевые IP-адреса;

- заданный (ненулевой) IP-адрес изменяет работу маршрутизатора и привязывает сетевое приложение к соответствующему сетевому интерфейсу. При отправлении данных в сеть через сокет с заданным IP-адресом, маршрутизатор Windows определяет, к какому сетевому интерфейсу относится этот адрес. Если подходящий сетевой интерфейс найден, данные "тупо" выходят в сеть через этот интерфейс независимо от адреса получателя, при этом в качестве адреса отправителя используется IP-адрес сокета, а не строго "основной" адрес сетевого интерфейса (это может быть любой IP-адрес из списка адресов, назначенных сетевому интерфейсу, но конечно не адрес "от балды"). Если интерфейс не найден, данные отбрасываются, и сетевое приложение получет ошибку. При приеме данных из сети маршрутизатор Windows направляет эти данные в сокет с заданным IP-адресом только если IP-адрес и номер порта сокета совпадают с IP-адресом и номером порта в адресе получателя. Таким образом, сокет с заданным IP-адресом "виден" только в той сети, с которой связан соответствующий IP-адресу сетевой интерфейс, и только под своим конкретным IP-адресом. Сокет с заданным IP-адресом позволяет другим сокетам использовать такой же номер порта, при условии, что им назначены другие ненулевые IP-адреса.

На любом из сетевых уровней, от уровня сетевых приложений до уровня сетевых интерфейсов, могут находиться дополнительные средства управления сетями и средства сетевой безопасности, например, дополнительно установленные программные роутер, брандмауэр (firewall) или антивирус, которые "вклиниваются" в некотором месте в цепочке передачи данных между приложением и сетью. Эти средства могут вносить дополнительные особенности в работу сокетов в зависимости от их параметров, в частности, от присвоенного IP-адреса.

******************

Теперь, когда необходимые понятия введены, можно перейти к самой проблеме разделения адресов в АСТЕР: зачем это нужно, как это работает и "почему не работает".

Разделение адресов нужно нам в случаях, когда:

а) мы хотим запустить на одном компьютере на разных рабочих местах несколько сетевых приложений, принимающих входящие подключения на один и тот же порт, т.е. мы хотим сделать их доступными по одинаковым портам но по разным IP-адресам, устранив при этом неизбежный в обычной ситуации конфликт портов. В этом случае, перед тем как "городить огород" с IP-адресами, следует обратиться к настройкам соовтетствующего приложения на предмет, нелья ли там просто поменять номер порта;

б) мы хотим "пометить" разными IP-адресами исходящие запросы от сетевых приложений на разных рабочих местах, чтобы сервер в локальной сети, которому они адресованы, или некоторая промежуточная служба в локальной сети (например, служба учета и блокировки трафика) могли отличить запросы одного места от запросов другого. Подразумеваемые здесь сервер или служба могут работать на том же компьютере, такое расположение тоже входит в понятие "локальная сеть". В этом случае следует предварительно обратиться к описанию сервера или службы, чтобы выяснить, какие способы авторизации они поддерживают: возможностей имеющейся авторизации может быть достаточно для различения пользователей, и разделение IP-адресов тогда не потребуется (и даже может создать лишние проблемы).

Никакие другие случаи, выходящие за пределы этих двух формализованных условий, не требуют разделения IP-адресов. К примеру, если просто нужен Интернет на рабочих местах и простой доступ в локальную сеть, заморачиваться с разделением IP-адресов не нужно, и без этого всё прекрасно будет работать.

Как работает разделение IP-адресов в АСТЕР.

Здесь предполагается, что весь написанный выше текст прочитан внимательно и полностью, введенные в нем понятия осознаны и усвоены.

Итак,
...Сетевое приложение создает нужное количество сокетов с помощью стандартных команд Windows sockets API. При создании сокет получает базовые характеристики: сетевой протокол с которым он будет работать (TCP, UDP) и адресную пару IP-адрес+порт, которые определяют место сокета среди всех доступных сетей...Сетевое приложение может самостоятельно назначить конкретные IP-адрес и порт своему сокету, или задать "нулевые" значения для обоих или одного из двух этих параметров...
Если рабочему месту, на котором выполняется данное сетевое приложение, в настройках АСТЕР задан IP-адрес, тогда на этапе, когда "...сокет получает базовые характеристики...", в работу приложения вмешивается АСТЕР и вместо нулевого IP-адреса (и только в случае, если приложение задает нулевой IP-адрес), подставляет заданный в настройках IP-адрес. И всё: на этом роль АСТЕРа заканчивается, и "начинаюся" особенности, описанные выше для сокета с заданным адресом.

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

Всегда нужно помнить, что "...сокет с заданным IP-адресом виден только в той сети, с которой связан соответствующий IP-адресу сетевой интерфейс...", то есть без применения дополнительных средств перенаправления (упомянутая выше служба NAT и сетевые шлюзы), приложение на рабочем месте с назначенным IP-адресом получает доступ только в ту сеть и может быть доступно только из той сети, к которой принадлежит заданный IP-адрес. Если используется адрес сетевой карты, тогда приложение имеет доступ только в локальную сеть, с которой соединена эта сетевая карта. Если используется адрес виртуального адаптера, тогда приложение не имеет доступа ни в какую сеть; взаимодействие с другими сетевыми приложениями в этом случае возможно только в пределах того же компьютера.

Чтобы сетевое приложение на рабочем месте с назначенным IP-адресом получало доступ к другим сетям, например, доступ в Интернет, в настройках связанного с приложением сетевого интерфейса должен быть прописан шлюз(ы) в эти сети, расположенный в той же локальной сети, которой принадлежит заданный месту IP-адрес (типичная ситуация: Интернет "заводится" через локальную сеть с внешнего маршрутизатора или с другого компьютера, предоставляющего услугу общего доступа, тут мы прописываем шлюз в настройках сетевой карты), или должна быть организована локальная (в пределах компьютера) передача данных между сетевыми интерфейсами: между интерфейсом, с которым связано приложение и интерфейсом в нужную сеть (типичная ситуация: доступ в Интернет осуществляется через отдельно настроенное туннельное подключение). В этом случае нужно либо включить предоставление общего доступа к подключению от одного интерфейса к другому (т.е. включить встроенную в систему службу NAT), либо установить дополнительное программное обеспечение, способное выполнять функции NAT.

Чтобы сетевое приложение на рабочем месте с назначенным IP-адресом могло принимать входящие подключения из других сетей, точно так же в настройках связанного с приложением сетевого интерфейса должен быть прописан шлюз в эти сети, или должна быть организована локальная передача данных между сетевыми интерфейсами, с одной дополнительной особенностью: в настройках шлюза (если он выполняет преобразование адресов) или в настройках службы общего доступа или в настройках дополнительного программного обеспечения, выполняющего функцию NAT, необходимо вручную создать постоянный канал, по которому входящие подключения будут переадресованы на IP-адрес и порт, с которыми работает сетевое приложение (в системе Windows XP операция создания постоянного канала называется добавлением сетевой службы, соответствующие команды доступны в окне дополнительных свойств сетевого подключения).

**Встречаются сетевые приложения, которым для правильной работы необходимо знать свой "внешний" IP-адрес. С большой вероятностью таковыми могут оказаться приложения интеграции в так называемые "пиринговые" сети (к которым относятся, к примеру, файлообменные сети torrent и e-mule). Такие приложения могут работать с ограниченной функциональностью или не работать вообще на местах АСТЕР с назначенными IP-адресами. Это естественное и понятное ограничение, вытекающие исключительно из особенностей работы этих приложений.

И еще раз повторю:
На любом из сетевых уровней, от уровня сетевых приложений до уровня сетевых интерфейсов, могут находиться дополнительные средства управления сетями и средства сетевой безопасности, например, дополнительно установленные программные роутер, брандмауэр (firewall) или антивирус, которые "вклиниваются" в некотором месте в цепочке передачи данных между приложением и сетью. Эти средства могут вносить дополнительные особенности в работу сокетов в зависимости от их параметров, в частности, от присвоенного IP-адреса.
Если на компьютере установлены такие средства, а при разделении IP-адресов появляются проблемы, которые не устраняются никакими разумными мерами (типичная ситуация: все делаю правильно, но ничего не работает), тогда все такие программы нужно отключить, заново и аккуратно выполнить нужные настройки, убедиться что всё работает, а затем обратиться к описанию этих программ и там найти способ их настройки для правильной работы с заданными IP-адресами.

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 53 гостя