Назад | Перейти на главную страницу

DNS «рекурсия недоступна» с использованием VPN-соединения Cisco AnyConnect

Есть ли у кого-нибудь опыт настройки Cisco AnyConnect VPN? У нас проблема с разрешением DNS-имени клиента при подключении через VPN.

Мне кажется, что клиент Cisco AnyConnect VPN перехватывает запросы DNS от клиентов.

  1. Может ли кто-нибудь подтвердить, что VPN-клиент AnyConnect действительно это делает (перехватывает DNS-трафик)?
  2. Где это настроено на сервере VPN?

РЕДАКТИРОВАТЬ:

Вот как меняется таблица маршрутизации, когда я подключаюсь к VPN:

[~]
$ diff -u /tmp/route_normal /tmp/route_vpn 
--- /tmp/route_normal   2010-01-20 19:23:47.000000000 +0100
+++ /tmp/route_vpn      2010-01-20 19:24:46.000000000 +0100
@@ -1,6 +1,10 @@
 Kernel IP routing table
 Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
+xxx.xxx.xx.xx.i 10.0.0.1        255.255.255.255 UGH   0      0        0 ath0
 172.16.53.0     *               255.255.255.0   U     0      0        0 vmnet1
 10.0.0.0        *               255.255.255.0   U     0      0        0 ath0
+172.17.20.0     *               255.255.255.0   U     0      0        0 cscotun
0
+192.168.111.0   172.17.20.212   255.255.255.0   UG    0      0        0 cscotun
0
 172.16.140.0    *               255.255.255.0   U     0      0        0 vmnet8
+172.16.0.0      172.17.20.212   255.255.0.0     UG    0      0        0 cscotun
0
 default         10.0.0.1        0.0.0.0         UG    0      0        0 ath0

РЕДАКТИРОВАТЬ 2:

ИТ-специалист сделал "кое-что" с конечной точкой VPN. Теперь я получаю сообщение «рекурсия недоступна» при выполнении nslookup. На DNS-серверах включена рекурсия. Так что, должно быть, перехват Cisco VPN DNS все испортил.

ubuntu@domU-12-31-39-00-ED-14:~$ /opt/cisco/vpn/bin/vpn connect xxx.xxxxxx.xx
...
  >> Please enter your username and password
...
  >> notice: Establishing VPN...
  >> state: Connected
  >> notice: VPN session established to ...
ubuntu@domU-12-31-39-00-ED-14:~$ nslookup www.vg.no
;; Got recursion not available from ..., trying next server
;; Got recursion not available from ..., trying next server
;; Got recursion not available from ..., trying next server
;; Got recursion not available from ..., trying next server
Server:         172.16.0.23
Address:        172.16.0.23#53

** server can't find www.vg.no.compute-1.internal: REFUSED

ubuntu@domU-12-31-39-00-ED-14:~$ ping 195.88.55.16
PING 195.88.55.16 (195.88.55.16) 56(84) bytes of data.
64 bytes from 195.88.55.16: icmp_seq=1 ttl=240 time=110 ms
64 bytes from 195.88.55.16: icmp_seq=2 ttl=240 time=111 ms
64 bytes from 195.88.55.16: icmp_seq=3 ttl=240 time=109 ms
^C
--- 195.88.55.16 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2017ms
rtt min/avg/max/mdev = 109.953/110.379/111.075/0.496 ms

Проверьте, какой кажущийся IP-адрес источника используется, когда ваши DNS-запросы попадают на внутренний DNS-сервер.

Вероятно, что сервер настроен только на предоставление рекурсивный сервис для запросов, которые поступают с известных внутренних IP-адресов, а также для предложения только авторитетный сервис для определенных доменных имен, которые размещены на одном сервере.

Если ваши DNS-запросы поступают с IP-адреса вне сети, они получат только авторитетные ответы, а не рекурсивные.

Как упоминалось в комментарии, сначала выясните свое раздельное туннелирование (маршрутизацию). Администратор конечной точки (Concentrator, ASA, PIX и т. Д.) Обычно имеет полный контроль над тем, как клиент будет обрабатывать это; некоторые компании будут туннелировать только свою сеть (так что DNS вашего клиента будет проходить через провайдера), а некоторые требуют туннелирования всего трафика по ссылке (чтобы DNS перешел через ссылку на корпоративную). В большинстве случаев это бизнес / ИТ-решение.

Посмотрите на таблицу маршрутизации на клиенте и посмотрите, как выглядят шлюзы и тому подобное, и куда направляется трафик в их конкретном экземпляре, чтобы обеспечить начальную точку для вашей отладки. Затем вы можете попробовать прямые запросы DNS от клиента к общедоступному ресурсу (например, новому DNS-серверу Google), чтобы увидеть, каковы результаты, при использовании программного обеспечения типа TCPview (если ваш клиент - Windows), чтобы наблюдать, как биты летают.