Если пробовать работать с IPX/SPX на машине без сетевой карты — то ничего не получится.
Но не устанавливать же специально сетевую карту для этих целей. Есть же что-то типа loopback в IPX/SPX ?
Просто очень неудобно. Для TCP/IP я могу писать дома, а потом уж отлаживать в сети.
А для IPX не получается. Как обойти данную проблему ? Может есть какой-нибудь эмулятор сетевой карты или что-то такое, я пока плохо в этом разбираюсь...
И попутно еще вопрос. Как бы определить на каком порту работает программа по IPX/SPX ? Для TCP это любым firewall'ом сделать можно...
Видимо, никто не занимался. Насколько я помню, тебе посоветовали Microsoft Loopback Device установить. Ты это сделал?
M>Народ ! Вы не видите мой вопрос ? Или просто ответа не знаете ? M>Ну неужели никто не занимался IPX/SPX ?
M>Черканите пару строчек
Здравствуйте, Malder, Вы писали:
M>Ну неужели никто не занимался IPX/SPX ?
Пару лет назад я использовал IPX/SPX, через сокеты реализовывал и сессию (SPX) и пакеты в сеть 'кидал' (IPX). Долго не мучаясь, я у знакомого купил паршивую, но рабочую сетевую карту за 3$, и программил дома, посылая пакеты самому себе.
Ну вообще то на TCP для этого достаточно netstat или tcpview... А вот такого понятия как порт для IPX нет:
The IPX address family defines the addressing structure for protocols that use standard IPX socket addressing. For these transports, an endpoint address consists of a network number, node address, and socket number.
The network number is an administrative domain and typically names a single Ethernet or token ring segment. The node number is a station's physical address. The combination of net and node form a unique station address that is presumed to be unique in the world. Net and node numbers are represented in ASCII text in either block or dashed notation as: '0101a040,00001b498765' or '01-01-a0-40,00-00-1b-49-87-65'. Leading zeros need not be present.
The IPX socket number is a network/transport service number much like a TCP port number and is not to be confused with the Winsock socket descriptor. IPX socket numbers are global to the end station and cannot be bound to specific net/node addresses. For instance, if the end station has two network interface cards, a bound socket can send and receive on both cards. In particular, datagram sockets would receive broadcast datagrams on both cards.
M>Как бы определить на каком порту работает программа по IPX/SPX ? Для TCP это любым firewall'ом сделать можно...
M>А то вот думаю, на каком порту DOOM работает... а как узнать ?
Здравствуйте, Andrew S, Вы писали:
AS>Наверное, в настройках посмотреть
Нет там настроек =) Естесственно. На каком хочет "порту" работать — на таком и работает. С TCP/IP все решается просто. Действительно, хотя бы netstat... а вот как быть с IPX/SPX ?
Ну тогда сниффером попробовать. Например, Etherеal неплохая вещь.
M>Нет там настроек =) Естесственно. На каком хочет "порту" работать — на таком и работает. С TCP/IP все решается просто. Действительно, хотя бы netstat... а вот как быть с IPX/SPX ?
А что делать... А кроме этого придется к нему еще и winpcap скачивать. И это все будет работать только по сетке — localhost не поддерживается. И связано это с NDIS, кажется. Но другого сниффера, позволяющего анализировать пакеты стольких форматов я не видел.
M>Посмотрел. Блин, 8Mb ! Мне стока не скачать...
Здравствуйте, Andrew S, Вы писали:
AS>А что делать... А кроме этого придется к нему еще и winpcap скачивать. И это все будет работать только по сетке — localhost не поддерживается. И связано это с NDIS, кажется. Но другого сниффера, позволяющего анализировать пакеты стольких форматов я не видел.
Есть, но они не понимают стольких форматов и примерно такие же по объему. Так ты сам поищи по гуглю — их там просто тонны.
M>Может еще какие сниферы есть ?
Здравствуйте, Andrew S, Вы писали:
AS>А что делать... А кроме этого придется к нему еще и winpcap скачивать. И это все будет работать только по сетке — localhost не поддерживается. И связано это с NDIS, кажется. Но другого сниффера, позволяющего анализировать пакеты стольких форматов я не видел.
Точно. Говорю же. Тебе правильно сказали — НАДО ставить виртуальный сетевой адаптер (Microsoft virtual loopback device). и слушать, что говорять другие
А локалхост работать не может благодаря архитектуре сетевого стека в win nt. С виртуальным адаптером — все будет.
M>А ТОЧНО локалхост не будет РАБОТАТЬ ? Точно ?
M>Или есть другие снифы, поддерживающие локалхост ?
Здравствуйте, Malder, Вы писали:
M>Если пробовать работать с IPX/SPX на машине без сетевой карты — то ничего не получится. M>Но не устанавливать же специально сетевую карту для этих целей. Есть же что-то типа loopback в IPX/SPX ? M>Просто очень неудобно. Для TCP/IP я могу писать дома, а потом уж отлаживать в сети.
Неправда ваша, Malder, что ничего не получится.
Именно так я и писал программку для IPX (без SPX). Есть такой сетевой адаптер, называется "Адаптер Microsoft замыкания на себя" (в англоязычных версиях Windows называется, по-моему, MS Loopback). Так вот, на него можно вешать любые протоколы: TCP, IXP, NetBEUI и спокойно отлаживать сетевые программки. Устанавливается это чудо обычной установкой нового оборудования, в списке производителей нужно выбрать Microsoft.
Потом, правда, я установил VmWare, и необходимость в MS Loopback отпала, т.к. VmWare тащит с собой виртуальные сетевые карты (аж до 6 штук). С точки зреня Windows это обычные сетевые карты, к которым можно привязывать протоколы, сетевые службы и прочее.
Здравствуйте, Andrew S, Вы писали:
AS>Точно. Говорю же. Тебе правильно сказали — НАДО ставить виртуальный сетевой адаптер (Microsoft virtual loopback device). и слушать, что говорять другие
В 2000-х это есть в HardwareWizard->Add new device->Network->Microsoft
В 98-х это в Панель управления->Сеть->Добавить->Сетевая плата->Microsoft
Вот только по умолчанию нет в 98-х. Надо что то скачивать с сайта мелкософта.
Так что советую сменить систему. 98-е — редкостная гадость (впрочем, это мое личное мнение).
M>Может дело в том, что у меня вовсе не NT, а 98 ?
M>Если все в этом дело, то я перейду на 2000
Здравствуйте, Алексей Владимирович Миронов, Вы писали:
Что за VmWare ? Можно поподробнее ? Для чего используется, где качать ?
АВМ>Потом, правда, я установил VmWare, и необходимость в MS Loopback отпала, т.к. VmWare тащит с собой виртуальные сетевые карты (аж до 6 штук). С точки зреня Windows это обычные сетевые карты, к которым можно привязывать протоколы, сетевые службы и прочее
Здравствуйте, Malder, Вы писали:
M>Что за VmWare ? Можно поподробнее ? Для чего используется, где качать ?
VmWare — виртуальная машина, в которой можно запускать различные операционные системы (начиная с MS-DOS, заканчивая Linux и Novell). Она эмулирует некий набор железа (жесткий диск, сетевая, звуковая карты и т.д.). Удобна тем, что над виртуальной машиной можно ставить различные жестокие эксперименты, не боясь чего-нибудь напортить. Кроме прочего, с виртуальной машиной можно общаться по сети (TCP/IP, IPX и вообще все, что сумеете установить). Можно даже запустить две-три виртуальных машины и заставить посылать друг другу пакеты (например, на одной вирт. машине запущен сервер, на других — клиенты). Затем можно, например, внезапно выключить (кнопкой Power Down) один из клиентов и с ужасом увидеть, что сервер упал. Вот такая методика тестирования сетевых приложений "на дому".
Берется это чудо с сайта одноименной компании. К сожалению, просит какие-то зеленые бумажки с изображением президента. Но это излечимо
P.S. Устанавливается это чудо только на NT-based системах (еще один повод перейти на 2K/XP).
P.P.S. Кстати, установленные VmWare виртуальные сетевые адаптеры спокойно работают и без запущенной VmWare. Так что можно тестировать разрабатывать multi-homed сервера (сидящие на нескольких сетевых интерфейсах), вообще не имея ни одной настоящей сетевой карты на борту.