Странная проблема, никак не могу понять в каком месте грабли: не работает терминальный клиент (или telnet.exe) до тех пор пока не обратишься каким либо образом (ping например) к требуемому узлу.
Итак исходные данные:
две сети:
192.168.77.0/24 - внешний ip 81.3.178.2 (например) - основная сеть
192.168.78.0/24 - внешний ip 2.178.3.81 (например) - удалённая сеть
В основной сети в роли vpn роутера выступает FreeBSD 5.4, в удалённой - DI-804HV
Настройка между ними - по доке
http://www.dlink.ru/technical/faq_vpn_11.php
Пытаюсь с удалённой сети подключиться к терминальному серверу в основной сети:
(сразу оговорюсь, если вместо имён хостов использовать ip-адреса - ничего не меняется - дело не в резолвинге имён)
Код:
mstsc.exe -v server1
в ответ получаю:
Код:
The client could not connect to the remote computer
аналогичный ответ и если дать команду
Код:
telnet server1 3389
или, например, telnet server1 25
А вот если дать
Код:
ping server1
а затем
Код:
mstsc -v server1
то тогда всё замечательно.
В дальнейшем уже можно просто запускать клиента, и всё работает... но через некоторое время всё равно "забывает" и приходится опять "пинговать"
Таким образом если написать bat-файлик start_term.bat:
Код:
ping server1 && mstsc -v server1
и запускать его, то тогда всё работает замечательно, но это не выход.
Вместо пинга можно использовать, например:
- найти и открыть server1 в "сетевом окружении"
- дать команду nbtstat -a ip_сервера
- WIN+R, \\server1\share
Прошивка в DI-804HV:
Current Firmware Version: V1.40b04
Firmware Date: Wed, Oct 06 2004
Проблема только со стороны удалённой подсети (со стороны DI-804HV)
Лог tcpdump на FreeBSD когда "нет связи":
Код:
vpn# tcpdump host 192.168.78
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on xl0, link-type EN10MB (Ethernet), capture size 96 bytes
17:50:32.295475 IP 192.168.78.24.1624 > 192.168.77.8.rdp: S 3458539821:3458539821(0) win 16384 <mss 1460,nop,nop,sackOK>
17:50:35.206906 IP 192.168.78.24.1624 > 192.168.77.8.rdp: S 3458539821:3458539821(0) win 16384 <mss 1460,nop,nop,sackOK>
17:50:41.216053 IP 192.168.78.24.1624 > 192.168.77.8.rdp: S 3458539821:3458539821(0) win 16384 <mss 1460,nop,nop,sackOK>
^C
3 packets captured
233 packets received by filter
0 packets dropped by kernel
vpn#
А теперь лог "пинга":
Код:
vpn# tcpdump host 192.168.78
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on xl0, link-type EN10MB (Ethernet), capture size 96 bytes
17:53:31.483641 IP 192.168.78.24 > 192.168.77.8: icmp 40: echo request seq 35073
17:53:31.484016 IP 192.168.77.8 > 192.168.78.24: icmp 40: echo reply seq 35073
17:53:32.486428 IP 192.168.78.24 > 192.168.77.8: icmp 40: echo request seq 35329
17:53:32.486799 IP 192.168.77.8 > 192.168.78.24: icmp 40: echo reply seq 35329
17:53:33.487934 IP 192.168.78.24 > 192.168.77.8: icmp 40: echo request seq 35585
17:53:33.488142 IP 192.168.77.8 > 192.168.78.24: icmp 40: echo reply seq 35585
17:53:34.489448 IP 192.168.78.24 > 192.168.77.8: icmp 40: echo request seq 35841
17:53:34.489694 IP 192.168.77.8 > 192.168.78.24: icmp 40: echo reply seq 35841
^C
8 packets captured
235 packets received by filter
0 packets dropped by kernel
vpn#
И теперь лог повторно "mstsc -v server1":
Код:
vpn# tcpdump host 192.168.78
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on xl0, link-type EN10MB (Ethernet), capture size 96 bytes
17:56:19.102119 IP 192.168.78.24.1628 > 192.168.77.8.rdp: S 4269411022:4269411022(0) win 16384 <mss 1460,nop,nop,sackOK>
17:56:19.102552 IP 192.168.77.8.rdp > 192.168.78.24.1628: S 3455605305:3455605305(0) ack 4269411023 win 16384 <mss 1460,nop,nop,sackOK>
17:56:19.104022 IP 192.168.78.24.1628 > 192.168.77.8.rdp: . ack 1 win 17520
17:56:19.104541 IP 192.168.78.24.1628 > 192.168.77.8.rdp: P 1:38(37) ack 1 win 17520
=================SKIPPED=====================
17:56:23.588309 IP 192.168.78.24.1628 > 192.168.77.8.rdp: . ack 15003 win 17253
17:56:23.589717 IP 192.168.78.24.1628 > 192.168.77.8.rdp: F 10454:10454(0) ack 15003 win 17253
17:56:23.589868 IP 192.168.77.8.rdp > 192.168.78.24.1628: . ack 10455 win 64936
17:56:23.590009 IP 192.168.77.8.rdp > 192.168.78.24.1628: R 15003:15003(0) ack 10455 win 0
^C
113 packets captured
208 packets received by filter
0 packets dropped by kernel
vpn#
У кого какие мысли, куда рыть?....