Сообщения без ответов | Активные темы Текущее время: 28 мар 2024, 12:04



Ответить на тему  [ Сообщений: 10 ] 
ASA 5505 Как правильно закрывать мёртвые соединения? 
Автор Сообщение

Зарегистрирован: 22 янв 2013, 13:29
Сообщения: 14
Здравствуйте.
VPN IPSec между головным офисом ASA 5505 8.4(2) (192.168.0.0) и удаленным филиалом DLink DSR-150N (192.168.4.0)
В региональном офисе VoIP шлюз DLink DVG-5004S (192.168.4.202) в головном Астериск (192.168.0.246)
При падении интернет канала туннель успешно разрывается isakmp keepalive threshold 10 retry 2 с одной стороны и Dead Peer Detection с другой, но на ASA’е остается мёртвое соединение между VoIP шлюзом и Астериском.
Код:
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:09, bytes 25162, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:00, bytes 25709, flags –

Причем как видно даже тикают байты хотя на подсеть 4.0 уже даже нет маршрута, счетчик idle доходит до 0:00:10 и сбрасывается на 0
Мертвое соединение может висеть до 30 и более минут, если в это время интернет соединение в регионе восстанавливается, туннель подымается, все работает кроме VoIP шлюза, он не может зарегистрироваться на Астериске.
Чтобы он зарегистрировался нужно или поменять его IP/порт или сбросить мертвое соединение на ASA’е
Код:
ciscoasa(config)# clear conn address 192.168.4.202
1 connection(s) deleted.


Нашел статью Dead Connection Detection http://www.cisco.com/en/US/docs/securit ... #wp1080752
Только не знаю как правильно выставить значение лимитов чтоб не рвались «живые» соединения регистрации шлюза?
Или что еще можно сделать для устранения проблемы?


24 сен 2013, 08:36
Профиль

Зарегистрирован: 13 фев 2012, 15:46
Сообщения: 266
Может быть поможет:
Код:
ASA# config terminal
ASA(config)# timeout floating−conn 0:01:00
ASA(config)# end


24 сен 2013, 13:59
Профиль

Зарегистрирован: 22 янв 2013, 13:29
Сообщения: 14
Прописал - не помогает
Код:
ciscoasa(config)# show run timeout
timeout xlate 3:00:00
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 icmp 0:00:02
timeout sunrpc 0:10:00 h323 0:05:00 h225 1:00:00 mgcp 0:05:00 mgcp-pat 0:05:00
timeout sip 0:30:00 sip_media 0:02:00 sip-invite 0:03:00 sip-disconnect 0:02:00
timeout sip-provisional-media 0:02:00 uauth 0:05:00 absolute
timeout tcp-proxy-reassembly 0:01:00
timeout floating-conn 0:01:00


Туннель уже как 15 минут я разорвал и отключил, 4я подсеть абсолютно недоступна.
Соединения висят, и почемуто их idle доходит до 0:00:09 и начинается сначала.

Код:
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:00, bytes 48683, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:01, bytes 48683, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:02, bytes 48683, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:03, bytes 48683, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:04, bytes 48683, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:05, bytes 48683, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:06, bytes 48683, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:07, bytes 48683, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:08, bytes 48683, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:09, bytes 48683, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:00, bytes 49230, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:00, bytes 49777, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:00, bytes 50324, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:00, bytes 50871, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:00, bytes 51418, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:01, bytes 51418, flags -
ciscoasa(config)# show conn | include 192.168.4.202
UDP outside 192.168.4.202:5423 inside 192.168.0.246:5060, idle 0:00:02, bytes 51418, flags -


24 сен 2013, 14:26
Профиль

Зарегистрирован: 18 янв 2013, 13:28
Сообщения: 94
Поглядите на service resetoutbound и service resetinbound и если будет не лень то https://supportforums.cisco.com/videos/7004 поглядите это (пускать лучше в IE, в других браузерах чет не фурычит) там затрагивается кстати тема вашего вопроса.
А тикать счетчик будет, поскольку udp протокол без подтверждения доставки... И когда канал восстанавливается , ваша железка продолжает слать пакеты по старой памяти, а на принимающей стороне по таймауту все записи о регистрации железки уже удалились, вот и не оживает до принудительного очухивания.


24 сен 2013, 15:49
Профиль

Зарегистрирован: 22 янв 2013, 13:29
Сообщения: 14
"MikeloVV"
Посмотрел, проблема описана для TCP протокола, а в UDP всё как бы окей, и так всё отваливается, соответственно service resetoutbound и service resetinbound для TCP, но все равно попробовал - соединения висят как висели.


25 сен 2013, 13:31
Профиль

Зарегистрирован: 18 янв 2013, 13:28
Сообщения: 94
И то верно. Это все моя торопливость... А ради эксперимента, после падения туннеля и зависших коннектов дерните из сетки вашу sip коробочку и после сделайте sh conn... Пытаюсь на стенде сэмулировать вашу ситуевину...


25 сен 2013, 15:55
Профиль

Зарегистрирован: 22 янв 2013, 13:29
Сообщения: 14
Тушил и шлюз (192.168.4.201) и Астериск (192.168.0.246), соединение висит
Код:
ciscoasa(config)# show conn long | include 192.168.4.201
UDP outside:192.168.4.201/5423 (192.168.4.201/5423) inside:192.168.0.246/5060 (192.168.0.246/5060), flags T, idle 1s, uptime 2m10s, timeout 10m0s, bytes 9299

Попробовал сделать политику лимитов на это соединение всеравно не закрывает.
Код:
access-list DEAD_CONNECTION extended permit ip host 192.168.4.201 host 192.168.0.246
class-map DEAD_CONNECTION
 match access-list DEAD_CONNECTION
policy-map DEAD_CONNECTION
 class DEAD_CONNECTION
  set connection timeout embryonic 0:00:10 half-closed 0:05:00 idle 0:00:10 dcd 0:00:10 1
service-policy DEAD_CONNECTION interface outside


26 сен 2013, 06:14
Профиль

Зарегистрирован: 01 янв 1970, 03:00
Сообщения: 4519
Прям как с ARP на 5510, живут практически вечно :)


26 сен 2013, 08:07
Профиль

Зарегистрирован: 22 янв 2013, 13:29
Сообщения: 14
Всё я разобрался с проблемой.
Кстати не только у меня одного такая проблема была
Вот такая же ситуация только без туннеля https://supportforums.cisco.com/thread/225770 человек решил проблему таймаутами, но мне они не помогали т.к. счетчик idle (время после последнего пакета) постоянно сбрасывался.
ASA тут не причем, Астериск отправлял сообщения мониторинга состояния SIP клиента, там самым ASA и держала соединение SIP клиента сбрасывая его idle.
В Астериске у клиентов есть такой параметр qualify
Цитата:
Если вы включаете функцию qualify в конфигурации для Вашего SIP устройства в файле sip.conf, тогда Asterisk периодически будет отправлять SIP сообщение типа OPTIONS, для проверки, что данное устройство работает и доступно для совершения вызовов. Если данное устройство, не ответит в течении заданного периода (или периода по умолчанию) в миллисекундах, тогда Asterisk рассматривает это устройство как выключенное и недоступное для совершения вызовов.

Эта функциональность также может использоваться для сохранения открытой UDP сессии с устройством, которое находиться за сервером с трансляцией IP адресов (NAT). С помощью периодической отправки SIP сообщений OPTIONS, мы будем продлевать время жизни записи в таблице трансляции IP адресов, для нашего UDP соединения через NAT. Это время жизни будет продлеваться, когда присутствует трафик между нашим сервером и устройством, которое находиться по ту сторону NAT. Если же время жизни этой записи истечет, тогда запросы, отправляемые с нашего сервера Asterisk, просто не дойдут до SIP устройства, потому что NAT сервер уже не будет знать, как ему обратно оттранслировать IP адреса.
Этот режим используется совместно с установленным параметром nat=yes.

У меня он по умолчанию был включен, хотя nat выключен и не используется.
Интерфейс Астериска я выключал пару раз, но не надолго.
В логах не отображаются пакеты от 192.168.0.246 к 192.168.4.201


26 сен 2013, 11:19
Профиль

Зарегистрирован: 13 фев 2012, 15:46
Сообщения: 266
А я Вам хотел посоветовать наоборот пиру указать qualify=yes.
Хорошо, что промолчал :)


26 сен 2013, 11:54
Профиль
Показать сообщения за:  Поле сортировки  
Ответить на тему   [ Сообщений: 10 ] 

Кто сейчас на конференции

Сейчас этот форум просматривают: Baidu [Spider] и гости: 53


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Designed by ST Software for PTF.
Русская поддержка phpBB