Russian Qt Forum

Qt => Работа с сетью => Тема начата: Germiona от Октябрь 29, 2008, 12:30



Название: Connect Refused
Отправлено: Germiona от Октябрь 29, 2008, 12:30
 Добрый день!

Господа, подскажите, плиз, в чем может быть проблема....

Модель Клиент - Сервер

Если клиент создавать с помощью средств QT3:

Код:
    socket = new QSocket(this);
    connect(socket, SIGNAL(connected()), SLOT(slotConnected()));
    connect(socket, SIGNAL(error(int)), SLOT(slotError(int)));   
    connect(socket, SIGNAL(readyRead()), SLOT(slotReadyRead()));   
   
    socket->connectToHost("192.168.100.69", 15000);

то соединение не происходит и выдает ошибку QSocket::ErrConnectionRefused

Хотя без использования QT соединение устанавливается, напр:

Код:
int sock;
struct sockaddr_in server = {AF_INET, 15000};
server.sin_addr.s_addr = inet_addr("192.168.100.69");

if( (sock = socket(AF_INET, SOCK_STREAM, 0)) < 0)
    printf("\n ERR SOCKET\n");

if(connect(sock, (struct sockaddr *)&server, sizeof(struct sockaddr_in)) == -1)
    printf("\n ERR SERVER\n");

То есть и порт,и IP-адрес правильные....
В чем может быть проблема?....Сервер тоже должен создаваться средствами QT?


Название: Re: Connect Refused
Отправлено: KADABRA от Октябрь 29, 2008, 23:52
Цитировать
то соединение не происходит и выдает ошибку QSocket::ErrConnectionRefused
Файрвол установлен на клиенте/сервере?
Коннект на ya.ru:80 проходит?


Название: Re: Connect Refused
Отправлено: lit-uriy от Октябрь 30, 2008, 00:16
2 KADABRA, она же написала, что без Qt все работает.


Название: Re: Connect Refused
Отправлено: KADABRA от Октябрь 30, 2008, 00:37
2 KADABRA, она же написала, что без Qt все работает.
И? Вы телепат и можете помочь решить проблему по даному обьёму информации?
Нет? Тогда зачем мешать другим?


Название: Re: Connect Refused
Отправлено: Germiona от Октябрь 30, 2008, 11:44
Цитировать
Файрвол установлен на клиенте/сервере?
Коннект на ya.ru:80 проходит?
[/color]

Коннект с ya.ru:80 проверить не могу, соединения с интернетом нет. Файрвол не думаю,что установлен....это Линукс....


Название: Re: Connect Refused
Отправлено: Admin от Октябрь 30, 2008, 12:06
Код:
telnet 192.168.100.69 15000

что говорит?


Название: Re: Connect Refused
Отправлено: Germiona от Октябрь 30, 2008, 12:25
Цитировать
Код:
[color=navy]telnet 192.168.100.69 15000[/color]

что говорит?

Код:
Trying 192.168.100.69...
telnet: connect to address 192.168.100.69: Connection refused

Ээээ......и что это означает?


Название: Re: Connect Refused
Отправлено: Germiona от Октябрь 30, 2008, 12:52
Собственно... другая машина,которая с сервером коннектится удачно, на telnet отвечает так же...connection refused


Название: Re: Connect Refused
Отправлено: Admin от Октябрь 30, 2008, 13:29
Это означает, что ваш код не на QT - там где socket работать не должен.
И проблема именно в удаленной тачке. C Qt проблем нет.


Название: Re: Connect Refused
Отправлено: Germiona от Октябрь 30, 2008, 13:54
Цитировать
Это означает, что ваш код не на QT - там где socket работать не должен.
И проблема именно в удаленной тачке. C Qt проблем нет.

Хорошо, а возможно взаимодействие сервера и клиента, если сервер написан не на QT,а клиент создан средствами QT ???


Название: Re: Connect Refused
Отправлено: ритт от Октябрь 30, 2008, 13:59
вы ж используете tcp/ip - конечно, возможно )
не имеет значения на чём писался сервер и/или клиент, если общение между ними происходит по опр.стандарту.


Название: Re: Connect Refused
Отправлено: Germiona от Октябрь 30, 2008, 14:04
Цитировать
не имеет значения на чём писался сервер и/или клиент, если общение между ними происходит по опр.стандарту.


Так почему тогда ошибка при соединении....... ??? Сервер-то рабочий.....Сложностей в создании сокета тоже нет  ???


Название: Re: Connect Refused
Отправлено: Admin от Октябрь 30, 2008, 15:02
Попробуйте сначала
Код:
ping 192.168.100.69
Если пойдет, то
Код:
telnet 192.168.100.69 80

вместо 80 - подставляете 21,22, 110, 443 - проверить открыты ли порты.

>>Сервер-то рабочий.
на рабочем сервере стоит firewall на этот порт, типа коннект с определенного IP.


Название: Re: Connect Refused
Отправлено: Germiona от Октябрь 30, 2008, 15:36
Естественно ping проходит.

Попробывала telnet с разными портами.
Только на 22 устанавливается соединение, остальные отклоняют связь.



Название: Re: Connect Refused
Отправлено: Admin от Октябрь 30, 2008, 16:03
значит для вас только порт ssh открыт и все!!


Название: Re: Connect Refused
Отправлено: spirit от Октябрь 30, 2008, 16:16
ответственного за файервол попросить открыть нужный порт  :)


Название: Re: Connect Refused
Отправлено: Germiona от Октябрь 30, 2008, 21:40
Всем спасибо  :) Дело было в удаленном сервере, проблема решилась  :)