Архивы: по дате | по разделам | по авторам

Доступ к ICQ в корпоративной сети

АрхивИнтернет
автор : Евгений aka f2065    29.08.2005

Когда в корпоративной сети закрыт доступ к "аське" или "Живому Журналу", и вроде бы ничего нельзя сделать, есть неожиданное решение: использовать GPRS, причем только для ICQ- или LiveJournal-трафика.

Когда в корпоративной сети закрыт доступ к "аське" или "Живому Журналу", и вроде бы ничего нельзя сделать, есть неожиданное решение: использовать GPRS, причем только для ICQ- или LiveJournal-трафика. Для этого необходимо сделать так, чтобы пакеты, адресованные к ICQ-серверу, отправлялись по GPRS, а все прочие - в локальную сеть. И эта задача легко решается стандартными средствами Windows, а именно - настройкой TCP/IP-роутинга.

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

Там выбираем строчку "Протокол интернета (TCP/IP) и затем нажимаем кнопку "Свойства". Там жмем кнопку "Дополнительно..." и идем на вкладку "Общие".

Тут надо снять галку на пункте "Использовать основной шлюз в удалённой сети"1.

Теперь устанавливаем GPRS-соединение и идем в консоль (Пуск -> Выполнить -> CMD)2.

Узнаем, какой IP-адрес был выдан подключению GPRS. Набираем в консоле команду IPCONFIG. Будет выдан список установленных сетевых интерфейсов - локальная сеть (Ethernet) и GPRS.

Нас интересует IP-адрес для GPRS-соединения, запоминаем его.

Теперь, будем строить таблицу роутинга на сеть ICQ. Сервер ICQ имеет и использует две сети - 64.12.0.0/16 и 205.188.0.0/16. Чтобы Windows отправляла ICQ-пакеты на GPRS, надо ввести в консоли следующие команды (на месте IP-АДРЕС-GPRS потребуется указать тот IP-адрес GPRS, который мы ранее посмотрели):

ROUTE ADD 64.12.0.0 MASK 255.255.0.0 IP-АДРЕС-GPRS
ROUTE ADD 205.188.0.0 MASK 255.255.0.0 IP-АДРЕС-GPRS

Готово. Теперь можно запускать ICQ (лучше альтернативного клиента, чтобы не тратить трафик на ICQ-баннеры, например, Miranda) и она будет работать через GPRS, а не через сеть. Также в настройках ICQ-клиента нужно запретить прямые соединения между любыми пользователями.

Однако, в корпоративной сети служба DNS может не найти имя ICQ-сервера - login.icq.com, для решения этой проблемы в настройках ICQ вместо имени сервера укажите его IP-адрес. Узнать адрес можно, введя в консоли команду PING login.icq.com и посмотрев указанный в первой строке (в квадратных скобках) IP-адрес. Например, 64.12.200.89.

Аналогичным образом можно сделать роутинг и к каким-нибудь заблокированным в корпоративной сети сайтам, например, livejournal.com. Для этого надо выяснить IP-адрес сайта (через PING) - 66.150.15.150 и написать еще одну команду ROUTE:

ROUTE ADD 66.150.15.150 MASK 255.255.255.255 IP-АДРЕС-GPRS

Чтобы на сайт можно было заходить без обращения к DNS, откройте в "Блокноте" файл C:\WINDOWS\System32\Drivers\etc\hosts и добавьте в него строчку:

66.150.15.150 www.livejournal.com

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

Поскольку у нас в GPRS IP-адреса обычно динамические (каждый раз разные), то при каждом подключении к GPRS вам придется заново смотреть в IPCONFIG выданный адрес и заново вводить его командой ROUTE. Конечно, можно с этим смирится, но попробуем автоматизировать этот процесс, используя встроенный в Windows интерпретатор Windows Script Host.

Идея проста. Нам надо узнать назначенный IP и вставить его в команду ROUTE. Как известно, указав после команды знак ">" и имя файла, ответ команды будет выведен не на экран, а записан в файл. Таким образом, мы получим в текстовом виде ответ команды IPCONFIG. Далее, средствами Windows Script Host по ключевым словам найдем в тексте сначала абзац с описанием GPRS, а потом в нем - строку с назначенным IP-адресом. Затем вставим эту строчку в параметры команды ROUTE и выполним ее.

Итак, открываем "Блокнот" и пишем в нем такой сценарий (строчки со знаком ' пустые и их можно не писать)3:

'используемые объекты
set fso = CreateObject("Scripting.FileSystemObject")
set sh = WScript.CreateObject("WScript.Shell")

'временный файл
r = "c:\set_gprs_route.tmp"


'запись в файл отчёта команды IPCONFIG
sh.Run "CMD /C IPCONFIG >"+r,8,1

'Обработка отчёта IPCONFIG.
set f = fso.OpenTextFile(r, 1)
Dim IpAdr

'сначала найдём строку "GPRS" - с неё
'начинается информация о нужном адаптере.
Do While f.AtEndOfLine <> True
t = f.ReadLine
if (InStr(1, t, "GPRS", 1)) Then

'Теперь найдём строчку со словом "IP"
Do While f.AtEndOfLine <> True
t = f.ReadLine
if (InStr(1, t, "IP", 1)) Then

'В самом конце строчки - IP-адрес, его и возьмем
IpAdr = Right(t, Len(t) - InStrRev(t," "))
Exit Do
End If
Loop
Exit Do
End If
Loop

'удалим временный файл
f.Close
fso.DeleteFile(r)

'Зарегистрируем маршруты роутинга на адрес GPRS
sh.Run "ROUTE ADD 64.12.0.0 MASK 255.255.0.0 "+IpAdr,8,1
sh.Run "ROUTE ADD 205.188.0.0 MASK 255.255.0.0 "+IpAdr,8,1

'Это просто для наглядности сообщение,
'можно эту строчку удалить
WScript.Echo("Выданный GPRS IP-адрес: "+IpAdr)

'Завершение сценария.
WScript.Quit(0)

Сохраняем это в файл с расширением VBS, допустим, Set_Gprs_Route.vbs. Теперь, подключившись к интернету через GPRS, достаточно запустить этот сценарий и роутинг к серверу ICQ будет автоматически настроен через GPRS.


1. Для Windows ME эта опция находится в другом месте: "Свойства" соединения -> вкладка "Сеть" -> кнопка "Настройка TCP/IP" -> снять галку на "Использовать стандартный шлюз для удаленной сети". [вернуться]

2. Для Windows ME следует использовать вместо команды CMD команду COMMAND. [вернуться]

3. Приведенный пример сценария предназначен для Windows 2000 и выше, для Windows ME в него следует внести некоторые изменения: команду CMD заменить на COMMAND, а имя соединения искать не по строке "GPRS", а по строке "1 Ethernet". [вернуться]

© ООО "Компьютерра-Онлайн", 1997-2024
При цитировании и использовании любых материалов ссылка на "Компьютерру" обязательна.