Найти тему
Максим Шинкарев

Настройка сети по протоколу TCP/IP в MS-DOS

И снова здравствуйте.

Опять у меня появились разные обстоятельства в связи с изменившимися приоритетами в жизни и уже появилось желание прекратить ведение канала так и не начав.

Попробую публиковать статьи кратковременными набегами.

Тема сегодняшнего поста организация обмена данными между DOS машиной и внешним миром.

Для того чтобы организовать взаимодействие DOS машины с внешним миром потребуется сетевая карта с имеющая поддержку packet драйверов и комплект программ под названием mTCP

Подойдут сетевые карты Realtek 8xxx(но не все), Dlink, Intel и другие. Список можно найти на сайте разработчика mTCP или загуглить в поиске имеются ли для вашей карты packet драйвер.

Packet драйвера предоставляют возможность организовать работу по протоколу TCP/IP в среде MS-DOS.

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

Поэтому я не буду расписывать принципы и какие-либо основы работы в сетях и просто покажу готовое рабочее решение.

Для того чтобы организовать обмен данными по протоколу TCP/IP с внешним миром нам потребуется:

1. Сетевая карта с поддержкой packet драйвера. В моем случае это Intel Pro100.

2. Компьютер MS-DOS совместимый. Я пробовал на 80386 платформе. Все работало нормально. Сейчас моя платформа на Pentium 2.

3. Операционная система. Я тестировал начиная с MS-DOS 4.01. Работает нормально.

4. Комплект утилит mTCP и packet драйвер для сетевой карты.

5. Подключение к внутренней или внешней сети(интернет).

Следующим этапом является запуск и настройка драйвера.

Packet драйвер представляет собой исполняемый файл с расширением COM. После запуска драйвер становится резидентным и доступ к нему осуществляется сторонними программами из пакета mTCP по программному прерыванию которое задается при запуске драйвера.

То есть в командной строке указываем имя файла драйвера с ключом, указывающим номер порта. Насколько я понял задействованы порты с адресами от 0x60 до 0x66.

Для автоматического запуска можно прописать команду в файл autoexec.bat

имя драйвера и ключи запуска индивидуальны для разных производителей и моделей сетевых карт.
имя драйвера и ключи запуска индивидуальны для разных производителей и моделей сетевых карт.
-3

После запуска драйвера произойдет тестирование карты и будет показан ее MAC адрес.

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

Следующий этап — это создание конфигурационного файла для набора утилит mTCP.

Для этого необходимо сделать следующие действия:

1. В файле autoexec.bat создать переменную, указывающую на файл конфигурации mTCP. Строка с переменной выглядит так – SET MTCPCFG = C:\MTCP\TCP.CFG

Путь и имя файла могут быть произвольными. Главное, чтобы данная папка и файл существовали в указанном месте.

-4

2. Следующий этап — это настройка конфигурации mTCP. В файл конфигурации необходимо внести следующую и информацию:

2.1 переменную packetint с адресом прерывания, указанным для запуска драйвера.

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

-5

Мой роутер поддерживает dhcp и поэтому чтобы он назначил для моей карты ip адрес мне необходимо запустить dhcp клиент из комплекта утилит mTCP.

Если все нормально работает мы увидим следующее сообщение:

-6

Я использую mTCP для обмена данными между DOS машиной и WINDOWS по внутренней ЛВС используя протокол FTP. Как использовать сетевую шару я еще не разобрался и как я понимаю это вероятно невозможно.

Что необходимо для того, чтобы осуществить обмен по FTP протоколу?

1. Создать файл конфигурации FTP сервера.

-7

ftp это имя пользователя, password - пароль, /drive_c/ftp имя диска и каталога для ftp шары,[any] - если не ошибаюсь открывает доступ для каталога шары и all это какие команды можно выполнять в шаре. В данном случае все( такие как запись, чтение, удаление и т.д.)

2. В файле конфигурации mTCP указать настройки ftp сервера. Как минимум необходимо указать расположение конфигурационного файла ftp сервера. Остальное по необходимости.

-8

Для того чтобы произвести обмен данными между компьютерами необходимо выполнить следующие манипуляции:

1. Если необходимо скачать какие-либо данные с DOS машины необходимо перенести их в папку, указанную в конфигурации.

2. Необходимо запустить ftp сервер на DOS машине командой ftpsrv.

-9

FTP сервер работает как обычная программа и на момент обмена данными мы не сможем выполнять какие либо операции.

По завершении передачи мы должны закрыть программу и продолжить работу далее.

-10

На Windows машине настраивается любой FTP клиент с указанием ip адреса DOS машины и учетных данных, указанных в конфигурации сервера.

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

Какие проблемы я встречал в процессе работы с этой системой?

1. Конфликт аппаратных прерываний между pci картами. Решение – попробовать поменять местами карты.

2. Зависание при передаче данных. Встречается на некоторых материнских платах на 775 сокете. Причину выявить не удалось.

3. Драйвер инициализирует карту, но ip адрес не назначается. Причины разные. В отдельном посту попробую с имитировать ситуацию и попробовать разобраться.

Что можно реализовать с помощью утилит mTCP и на чем работает?

1. Сетевые карты Intel Pro 100, RTL8029, Dlink DFE-520.

2. Работает в VirtualBox c с выходом во внешний мир.

3. В составе утилит набор - FTP клиент/сервер, telnet, ping, ntp клиент (для синхронизации времени), http клиент/сервер минимальный, irc

Кстати, с сторонними dos web клиентом получилось выйти в интернет для просмотра страниц. Конечно, это была жесть еще та, но удалось все же.

На этом пост завершаю. Спасибо за внимание.

Проект попробую продолжить, Переход на более современное оборудование так же продолжу, но с минимальным количеством шагов. Предполагаю 3-4 этапа "эволюции". Как я написал выше мои приоритеты изменились, и я постепенно избавляюсь от раритетного железа.