-
У меня есть приложение, работающее под Линуксом на некотором контроллере. С внешним миром оно связывается, в частности, по TCP; при этом выполняет функцию сервера. Из Виндов общаюсь с помощью TIdTCPClient из Indy9. Все работает прекрасно.
Теперь запускаю то же самое серверное приложение (конечно, перекомпилированное) в Линуксе, расположенном в разделе VMware. Сетевой адаптер, отвечающий за связь с VMware, имеет адрес 192.168.27.1. ifconfig в Линуксе показывает 192.168.27.128. Пинги проходят в обе стороны. Все подготовительные вызовы - socket(), bind(), listen() - завершаются успешно. Сижу в accept(). Настраиваю параметры клиента в Виндах и зову Client.Connect(1000). Отваливается с сообщением "Connect timeout".
Какие особенности я не учитываю, работая с виртуальной машиной?
-
файрвол под виндой и линуксом (iptables какойнить) uw © (01.12.08 22:38) Client.Connect(1000). кто так проверяет? telnet 192.168.27.128 1234
-
файрвол под виндой и линуксом (iptables какойнить)
И что? Я же не собираюсь администрировать сети, я в этом не разбираюсь. Я прошу помощи у тех, кто в этом разбирается и знает, что нужно делать с iptables, например.
-
Э не... Ты определись сначала в чем у тебя проблема: в TIdTCPClient из Indy9, с VMware, с Линуксом, с перекомпилированным под него приложением, с файрволами... ты сначала на самом линухе протелнется по порту...
-
Slym, из того, что я уже написал, следует, что проблем нет ни в TIdTCPClient, ни с VMware, ни с Линуксом. Перекомпилированное приложение тоже работает. Я не знаю, как обойти файерволы, если дело в них. Вот об этом я и спрашиваю у понимающих людей. А ты мне пишешь про "телнется". Куда телнетиться на самом линухе, по какому порту? telnet работает по 23 порту, и я благополучно им пользуюсь для удаленного управления контроллером из этого самого линуха.
Slym, давай немного помолчим, а?
-
uw © (02.12.08 23:45) [4] какому порту по потру который использует твоя программа... uw © (02.12.08 23:45) [4] Slym, давай немного помолчим, а? Этой фразой ты отпугнул не только меня...
-
Slym © (03.12.08 04:45) [5]
Вообще-то, проверять лучше командой ssh, а из Виндов - putty. В моем Линуксе сервер telnet вообще не поднят. Это и понятно - каждый без пароля может залезть. Все заработало, когда остановил брандмауэр гостевого Линукса. Думаю, он мне и не нужен.
-
> uw © (03.12.08 13:00) [6]
> В моем Линуксе сервер telnet вообще не поднят
Никого здесь не волнует, поднят он у тебя или не поднят. telnet 192.168.27.128 XXXX - это быстрый проверочный эквивалент твоего Client.Connect() Если целевой хост пингуется, а попытка коннекта при этом завершается неуспехом, проблему ищи в настройках межсетевого экрана (iptables или чего у тебя там - мне не ведомо)
-
> Пинги проходят в обе стороны
Показывай подробности ..
-
-
|