Discussion:
Asmax AR 1004g-V2, LAN i ... problemy
(Wiadomość utworzona zbyt dawno temu. Odpowiedź niemożliwa.)
Łukasz
2013-12-17 16:59:35 UTC
Permalink
Wiem, że lamerskie ale przypiliło mnie i muszę spytać.

Sytuacja jest następująca:

Router Asmax AR 1004g-V2 od netii i trzy kompy:
Jeden pod XP - wpięty do routera przez kabel ethernetowy,
Drugi pod Vista przez wifi,
Trzeci pod Win 7 64 bitowy przez wifi.
Wszystkie w sieci lokalnej.
Adresy nadawane przez DHCP.

I teraz tak: na tym XP mam serwer PostgreSQL dla którego tworzę sobie
aplikację w Lazarusie. Lokalnie łączę się przez sterownik ODBC i
wszystko OK. No ale chciałbym też połączyć się przez ten sterownik
zdalnie z pozostałych dwóch kompów - bo tak ta aplikacja ma ostatecznie
działać.

Ale nie mogę - za cholerę.
ping z win7 do xp działa po nazwie
w przeciwnym kierunku tylko po adresie cyfrowym (ma to znaczenie ?).

Czy ktoś kumaty w sieciach może mi dać hinta jak z tego wyjść ?

Z góry dzięki.

Łukasz
ein
2013-12-17 17:45:22 UTC
Permalink
Post by Łukasz
Wiem, że lamerskie ale przypiliło mnie i muszę spytać.
Jeden pod XP - wpięty do routera przez kabel ethernetowy,
Drugi pod Vista przez wifi,
Trzeci pod Win 7 64 bitowy przez wifi.
Wszystkie w sieci lokalnej.
Adresy nadawane przez DHCP.
I teraz tak: na tym XP mam serwer PostgreSQL dla którego tworzę sobie
aplikację w Lazarusie. Lokalnie łączę się przez sterownik ODBC i
wszystko OK. No ale chciałbym też połączyć się przez ten sterownik
zdalnie z pozostałych dwóch kompów - bo tak ta aplikacja ma ostatecznie
działać.
Ale nie mogę - za cholerę.
ping z win7 do xp działa po nazwie
w przeciwnym kierunku tylko po adresie cyfrowym (ma to znaczenie ?).
Czy ktoś kumaty w sieciach może mi dać hinta jak z tego wyjść ?
Możesz pokazać jak konfigurujesz ten serownik na końcówce? Np. Jakimś
screenshotem?
Czy udostępnienie bazy odbywa się za pośrednictwem udostępniania plików
w Windowsie?
Próbowałeś testowo wyłączyć zaporę na serwerze (XP)?
ein
2013-12-17 17:47:39 UTC
Permalink
Post by ein
Post by Łukasz
Wiem, że lamerskie ale przypiliło mnie i muszę spytać.
Jeden pod XP - wpięty do routera przez kabel ethernetowy,
Drugi pod Vista przez wifi,
Trzeci pod Win 7 64 bitowy przez wifi.
Wszystkie w sieci lokalnej.
Adresy nadawane przez DHCP.
I teraz tak: na tym XP mam serwer PostgreSQL dla którego tworzę sobie
aplikację w Lazarusie. Lokalnie łączę się przez sterownik ODBC i
wszystko OK. No ale chciałbym też połączyć się przez ten sterownik
zdalnie z pozostałych dwóch kompów - bo tak ta aplikacja ma ostatecznie
działać.
Ale nie mogę - za cholerę.
ping z win7 do xp działa po nazwie
W takim razie wykluczyłeś router.
Post by ein
Post by Łukasz
w przeciwnym kierunku tylko po adresie cyfrowym (ma to znaczenie ?).
Może jeśli odpowiesz na moje poniższe pytania.
Post by ein
Post by Łukasz
Czy ktoś kumaty w sieciach może mi dać hinta jak z tego wyjść ?
Możesz pokazać jak konfigurujesz ten serownik na końcówce? Np. Jakimś
screenshotem?
Czy udostępnienie bazy odbywa się za pośrednictwem udostępniania plików
w Windowsie?
Próbowałeś testowo wyłączyć zaporę na serwerze (XP)?
PS. Przepraszam za podwójnego posta.
Łukasz
2013-12-17 18:47:05 UTC
Permalink
Konfiguracja sterownika jest następująca:
Loading Image....html

Natomiast po kliknięciu test dostaję komunikat:
Could not connect to the server; connect failed for [192.168.1.4:5432]
Post by ein
Czy udostępnienie bazy odbywa się za pośrednictwem udostępniania plików
w Windowsie?
Nie. Komunikacja jest po porcie 5432. Pliku bazy bezpośrednio nie
udostępniam.
Post by ein
Próbowałeś testowo wyłączyć zaporę na serwerze (XP)?
Zapora jest cały czas wyłączona.

łukasz
ein
2013-12-17 22:33:23 UTC
Permalink
Post by Łukasz
http://zapodaj.net/f7373286af247.jpg.html
Dobra nasza, wiem już jak to działa.
Post by Łukasz
Could not connect to the server; connect failed for [192.168.1.4:5432]
Najprawdopodobniej jest to spowodowane zamkniętym portem, w momencie
rozpoczęcia połączenia musi zajść tzw. proces trójstronnego uzgodnienia.

W wielkim skrócie, wygląda to tak:
pakiet 1
klient -> serwer: pakiet TCP z flagą SYN
pakiet 2
serwer -> klient: pakiet TCP z flagą SYN i ACK
pakiet 3
klient -> serwer: pakiet TCP z podniesioną flagą ACK i ew. PUSH, i tu
zaczyna się dopiero cała transmisja.

Ze względu na to, że u Ciebie żadna usługa nie słucha na porcie serwera
nr 5432 komunikacja wygląda tak:
pakiet 1
klient -> serwer: pakiet TCP z flagą SYN
pakiet 2
serwer -> klient: pakiet TCP z flagą RST
i w tym momencie komunikacja się urywa o czym świadczy powyższy komunikat.
Post by Łukasz
Post by ein
Czy udostępnienie bazy odbywa się za pośrednictwem udostępniania plików
w Windowsie?
Nie. Komunikacja jest po porcie 5432. Pliku bazy bezpośrednio nie
udostępniam.
Post by ein
Próbowałeś testowo wyłączyć zaporę na serwerze (XP)?
Zapora jest cały czas wyłączona.
Musisz się upewnić, że proces bazy danych słucha na interfejsie o
adresie 192.168.1.4 (czy jak tam było na screenie jak ping puszczałeś) i
porcie nr 5432/TCP.
Wydaj polecenie na serwerze:
netstat -a -b -n

Jeżeli będziesz miał problem z interpretacją to podeślij wyniki.
Generalnie powinno to wyglądać tak:

TCP 0.0.0.0:445 0.0.0.0:0 NASŁUCHIWANIE 4
[System]
ein
2013-12-17 22:35:38 UTC
Permalink
ein wrote:
[...]
[svchost.exe]
TCP 0.0.0.0:445 0.0.0.0:0 NASŁUCHIWANIE 4
Znaczy to proces svchost.exe o nr PID 4 słucha na porcie TCP 445 na
wszystkich interfejsach sieciowych.

[svchost.exe]
TCP 192.168.1.4:445 0.0.0.0:0 NASŁUCHIWANIE 4
Znaczy to proces svchost.exe o nr PID 4 słucha na porcie TCP 445 na
interfejsie sieciowym z adresem IP '192.168.1.4'.
Łukasz
2013-12-19 01:46:54 UTC
Permalink
Uff. Poszło.

Po zapodaniu netstat -a -b -n na serwerze znalazłem taki między innymi wpis:
TCP 0.0.0.0:5432 0.0.0.0:0 NASŁUCHIWANIE 3680
[postgres.exe]

Znaczy się port był otwarty.

Złe było co innego. Mianowicie w pliku konfiguracyjnym pg_hba.conf
opisującym które hosty mogą się łączyć do których baz i na jakich
użytkowników trzeba było zrobić odpowiedni wpis. I ja o tym wiedziałem.
Tylko mój wpis był ... nieodpowiedni ;)
A odpowiedni jest taki:
host lukaszdb lukaszb 0.0.0.0/0 md5

Nie wiem, co prawda, po co jest to /0 po IP ale tak było w znalezionych
przykładach.

Dzięki za pomoc.

łukasz
ein
2013-12-19 03:37:16 UTC
Permalink
Post by Łukasz
Nie wiem, co prawda, po co jest to /0 po IP ale tak było w znalezionych
przykładach.
Gratulacje. :)

Zapewne chodzi o tzw. wildcard mask (maska wieloznaczna), określa ona
zakres adresów, które mogą się łączyć z serwerem, 0.0.0.0/0 oznacza
wszystkie adresy:
http://www.ccie.pl/viewtopic.php?p=85543
http://en.wikipedia.org/wiki/Wildcard_mask

Loading...