nixp.ru v3.0

25 мая 2017,
четверг,
23:18:50 MSK

DevOps с компанией «Флант»
bmv написал 4 сентября 2007 года в 17:01 (745 просмотров) Ведет себя как мужчина; открыл 1 тему в форуме, оставил 4 комментария на сайте.

Привет всем!

Помогите разобраться в следующей проблеме.

Кратко исходные данные от заказчика:

- Fedora Core 5 без иксов

- в DosEmu выполняется кассовая программа, написанная на FoxPro

- сеть организована через Samba (файловый обмен через расшаренные ресурсы)

Нужно:

- прикрутить клиентскую часть POS терминала.

Имеются 2 версии POS — для Linux и для DOS.

Обе версии используют TCP/IP.

В качестве проверки доступности сети, например, использую:

telnet

Linux версия работает без проблем.

Но у заказчика не получилось сделать вызов Linux-версии POS

из кассовой программы из DosEmu. И настаивает на запуске DOS-версии.

Почитав предварительно документы типа dosemu-networking и

поковыряв эти варианты (это через интерфейсы TUN/TAP и bridge),

ничего путного не добился (я жутко извиняюсь, но мой опыт работы с Linux — 2 недели).

Зато освоил следующий вариант:

- в dosemu.conf

$_pktdriver=(on)

$_netdev=«eth0»

$_vnet=«direct»

- в /etc/rc.d/rc.local

route add -net 0.0.0.0 netmask 0.0.0.0 dev eth0

- в DosEmu в отдельный каталог положил пакет Waterloo TCP

- там же настроил файл net.cfg — все параметры соответствуют настройкам eth0

из /etc/sysconfig/network-scripts/ifcfg-eth0

Делаю из DosEmu: ping — Красота!

Все пингуется!

Запускаю tm (телнет из Waterloo): tm -p

Connecting to ….. И ВСЕ! Отваливается по таймауту!

Телнет не работает!

Отсюда вопрос: почему пинги ходят на «ура», а телнет не работает?

Помогите, пожалуйста, довести до ума ситуацию.

С уважением, Михаил.

Dr. Evil

видимо, у этого компьютера — -- не открыт сокет, который слушает соответствующий порт.

давай вывод с этого компьютера:

netstat -atupn
bmv

С этим как раз все нормально.

Из Linux: telnet выполняется

влет. Все коннектится и выдается приглашение с удаленной

системы. Из DosEmu этого нет. Возвращаюсь из DosEmu обратно

в линукс — опять все нормально :-(

Genie

думается, что tcpdump, запущенный на linux-компе, тут может рассказать причину.

только может случиться мистика и с tcpdump-ом заработать — тогда надо тебе сетевую карточку перевести в promisc режим.

хотя, решение это ненормальное.

а нормальное, <font color=«blue»>вот</font>, к примеру.

bmv

думается, что tcpdump, запущенный на linux-компе, тут может рассказать причину.

>только может случиться мистика и с tcpdump-ом заработать — >тогда надо тебе сетевую карточку перевести в promisc режим.

>хотя, решение это ненормальное.

>а нормальное, вот, к примеру.

Можно немного поподробнее, как tcpdump использовать в данном случае?

Простой запуск показал, что это сниффер. При запуске висит

постоянно. Можно его запустить в фоновом режиме?

Dr. Evil

задача tcpdump — показывать пользователю информацию о трафике, приходящем и уходящем, с твоего компьютера.

вывод он этот делает на экран.

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

вот тебе пример:

# tcpdump -n -i eth0 host > /tmp/tcpdump &

bmv

>вот тебе пример:

># tcpdump -n -i eth0 host > /tmp/tcpdump &

Добро, попробую…

Еще один момент обнаружил (просьба не пинать сильно :-)):

Genie предлагал воспользоваться вот этим:

http://ltsp.ru/documentation/faq-dosemu-networking.html

У меня не получилось использовать этот вариант.

Причина: в комплект DosEmu входит dosnet.c, который надо

откомпилировать в dosnet.o и через insmod добавить в загрузку.

Как показала проверка, dosnet.o не включен в загрузку,

но попытка скомпилить сие чудо дала такую кучу ошибок!!!

Отсюда сделал вывод, что параметр $_pktdriver=(on) в dosemu.conf

мне ничем не поможет до включения dosnet.o

Еще момент: при попытке загрузить в DosEmu пакетный драйвер

сетевой карты на адрес 0×60 получаю сообщение что пакетный драйвер уже загружен! На другие адреса драйвер не грузиться.

Получается

bmv

Продолжаю… :-)

Получается, что $_pktdriver=(on) при реальном отсутствии

dosnet.o только резервирует прерывание под себя…

Сегодня проверю предположение.

Может кто нибудь поделиться dosnet.o ?

v.1.3.3