Войти

Показать полную графическую версию : BSD NAT


zenka
21-07-2008, 16:10
Доброе всем время суток! Помогите, пожалуйста, разобраться с BSD NAT-ом (в наличии FreeBSD 6.3). Не могу законектится к новому, корпоративному серверу (Лига:Закон, законодательная БД, работает на 30583 порту). Под неё есть специальный клиент. Так вот, через НАТ этот клиент не конектится, хоть убей – на стороне сервера виден постоянный коннект-обрыв. Когда же я подключаю машину с этим клиентом напрямую к модему – без проблем это клиент соединяется. Грешить на правила файрволла нет смысла, потому как даже упрощение правил «до нельзя» типа:

ipfw add 1 divert natd all from any to any via fxp1
ipfw add 2 pass all from any to any

должного эффекта не даёт – всё работает, кроме него .

Содержание /etc/natd.conf:

same_ports yes
use_sockets yes
unregistered_only yes

Заранее благодарен.

Аlchemist
21-07-2008, 17:36
Грешить на правила файрволла нет смысла »
может тогда имеет смысл этого клиента поковырять?

dmitryst
21-07-2008, 17:41
zenka, может, проверить связь с самого компьютера с FreeBSD? Например, telnet-ом. То есть приконнектиться к порту 30583 на машине-сервере, и посмотреть лог сервера.

zenka
21-07-2008, 18:07
Телнетом не коннектится

Аlchemist
22-07-2008, 09:11
Что с настройками tcp/ip машины, на которой установлен клиент? Она в шлюз идет вообще? Внешние сервера пингуются?

dmitryst
22-07-2008, 13:34
Телнетом не коннектится »
т.е. не коннектится вообще (нет связи) или не проходит авторизация и т.п.?

zenka
22-07-2008, 13:47
Что с настройками tcp/ip машины, на которой установлен клиент? Она в шлюз идет вообще? Внешние сервера пингуются? »

Да. Всё работает и всё пингуется.

Аlchemist
22-07-2008, 13:52
Доку по этому банк-клиенту читали? :)

zenka
22-07-2008, 14:12
Проанализировав tcpdump-ом трафик через нат, и напрямую, в глаза бросается различный размер окна, заявленного клиентом – у сервера он в обоих случаях одинаков – 4096.

IP-адреса (изменены из соображений безопасности )

10.0.0.2 – клиентская тачка (IP №1);
192.168.19.2 - клиентская тачка (IP №2);
10.1.1.14 - сервер.

Через NAT (соединение вроде как идёт, даже заставка появляется этой проги, но после длительных мучений – тайм аут вышел):

09:42:17.748987 IP 10.0.0.2.1580 > 10.1.1.14.30583: S 3821389914:3821389914(0) win 65535 <mss 1460,nop,nop,sackOK>
09:42:17.751935 IP 10.1.1.14.30583 > 10.0.0.2.1580: S 1202539426:1202539426(0) ack 3821389915 win 4096 <mss 1420>
09:42:17.752254 IP 10.0.0.2.1580 > 10.1.1.14.30583: . ack 1 win 65535
09:42:17.761549 IP 10.0.0.2.1580 > 10.1.1.14.30583: P 1:72(71) ack 1 win 65535
09:42:17.763937 IP 10.1.1.14.30583 > 10.0.0.2.1580: . ack 72 win 4096
09:42:19.876665 IP 10.1.1.14.30583 > 10.0.0.2.1580: P 1:3(2) ack 72 win 4096
…..

Напрямую (коннект нормальный):

10:46:10.942849 IP 192.168.19.2.1757 > 10.1.1.14.30583: S 2646472981:2646472981(0) win 16384 <mss 1460,nop,nop,sackOK>
10:46:10.944357 IP 10.1.1.14.30583 > 192.168.19.2.1757: S 1697707426:1697707426(0) ack 2646472982 win 4096 <mss 1420>
10:46:10.944620 IP 192.168.19.2.1757 > 10.1.1.14.30583: . ack 1 win 17040
10:46:10.952829 IP 192.168.19.2.1757 > 10.1.1.14.30583: P 1:72(71) ack 1 win 17040
10:46:10.954143 IP 10.1.1.14.30583 > 192.168.19.2.1757: . ack 72 win 4096
10:46:11.977653 IP 10.1.1.14.30583 > 192.168.19.2.1757: P 1:3(2) ack 72 win 4096

Быть может проблема в этом???

bozordzh
22-07-2008, 14:23
zenka, тут (http://www.freebsd.org/doc/ru_RU.KOI8-R/books/handbook/network-natd.html) , 27.8.4. Перенаправление портов,
или rinetd (http://www.freshports.org/net/rinetd/) ставь. ( standalone редиректор портов )
http://www.boutell.com/rinetd/

zenka
22-07-2008, 17:55
Спасибо за инфу, но сервер в интернете, а не у меня

zenka
23-07-2008, 12:39
Опять же проанализировав tcpdump-ом трафик, заметил, что клиент через некоторое время открывает новое соединение, неуспев толком закрыть старое уже на новом порту и на нём дальше работает, пока не разрывает и устанавливает соединение ещё на новом:

09:42:17.752254 IP 10.0.0.2.1580 > 10.1.1.14.30583: . ack 1 win 65535
09:42:17.761549 IP 10.0.0.2.1580 > 10.1.1.14.30583: P 1:72(71) ack 1 win 65535
09:42:17.763937 IP 10.1.1.14.30583 > 10.0.0.2.1580: . ack 72 win 4096
09:42:19.876665 IP 10.1.1.14.30583 > 10.0.0.2.1580: P 1:3(2) ack 72 win 4096
09:42:19.990825 IP 10.0.0.2.1580 > 10.1.1.14.30583: . ack 3 win 65533
09:42:20.104309 IP 10.0.0.2.1580 > 10.1.1.14.30583: P 72:74(2) ack 3 win 65533
09:42:20.106577 IP 10.1.1.14.30583 > 10.0.0.2.1580: . ack 74 win 4096
09:42:21.105486 IP 10.1.1.14.30583 > 10.0.0.2.1580: P 3:37(34) ack 74 win 4096
09:42:21.112819 IP 10.0.0.2.1580 > 10.1.1.14.30583: P 74:76(2) ack 37 win 65499
09:42:21.115426 IP 10.1.1.14.30583 > 10.0.0.2.1580: . ack 76 win 4096
09:42:21.125404 IP 10.0.0.2.1580 > 10.1.1.14.30583: F 76:76(0) ack 37 win 65499
09:42:21.127425 IP 10.1.1.14.30583 > 10.0.0.2.1580: . ack 77 win 4096
09:42:21.144527 IP 10.0.0.2.1581 > 10.1.1.14.30583: S 3788935278:3788935278(0) win 65535 <mss 1460,nop,nop,sackOK>
09:42:21.147411 IP 10.1.1.14.30583 > 10.0.0.2.1581: S 1202987426:1202987426(0) ack 3788935279 win 4096 <mss 1420>
09:42:21.147733 IP 10.0.0.2.1581 > 10.1.1.14.30583: . ack 1 win 65535
09:42:21.153103 IP 10.0.0.2.1581 > 10.1.1.14.30583: P 1:15(14) ack 1 win 65535
09:42:21.155409 IP 10.1.1.14.30583 > 10.0.0.2.1581: . ack 15 win 4096




© OSzone.net 2001-2012