Jump to content

Recommended Posts

Posted (edited)

кошак 3845:

vpdn pptp raduis client

nat

shaping+policing (out/in)

 

В определённый момент, примерно после 12 часов работы, перестаёт пропускать трафик от абонента во внешний мир.

Ситуация усугубляется тем, что пинги от абонента во внешку проходят нормально, а вот что-либо боее существенное - нет.

В сислог не ругается.

Причину понять не могу.

 

Каким образом можно докопаться до причины тупизны?

 

я уже весь моск себе сломал, мой консультант по данному вопросу помочь не может :(

 

Сейчас единственное, что приходит в голову, это вылавливать момент, когда он входит в такое состояние, подключаться клиентом и наблюдать за vi, увижу я дропы или нет, если увижу - куда копать?

Edited by terrible
Posted (edited)

Может, по очереди попытаться выключать фичи?

Что в момент начала проблем с загрузкой ЦПУ?

sh proc cpu | ex 0.0
sh ip nat translations
sh ip nat statistics

sh run от полисеров увидеть тоже не помешает.

Edited by cMex
Posted (edited)

sh proc cpu не смотрел, но кактус показывает так:

VHVXD0s43C.png

там, где в пиках провал - это ребут

 

sh ip nat translations - ну как обычно огромнейшая таблица, или надо с ещё каким ключиком глянуть?

sh ip nat statistics - завтра к вечеру в пик посмотрю, перед ребутом

sh run policy-map - тупо политики показывает, вроде всё правильно, как и настраивал

Edited by terrible
Posted (edited)

sh ip nat translations - ну как обычно огромнейшая таблица, или надо с ещё каким ключиком глянуть?

Прошу прощения, не написал, что посмотреть её в момент проблем, подключившись юзером, и только его сессии взглянуть.

Edited by cMex
Posted (edited)
подключившись юзером, и только его сессии взглянуть.
Немного не понял: пользователь подключается как PPTP клиент, а я смотрю через консольку, пользователь не может посмотреть его трансляции, или я туплю ?

 

Попробуйте таймауты на трансляции подкрутить.
Вот это вы имеете в виду? :

ip nat translation timeout <seconds>

 

Нашел ещё в конфиге вот что:

ip nat inside source list 15 interface GigabitEthernet0/0 overload

последний параметр на что оказывает влияние?

Edited by terrible
Posted

Пользователь не может, но вы подключившись пользователем в момент появления проблем с другого рабочего места можете зайти на маршрутизатор и посмотреть его/ваши трансляции.

Posted

Нашел ещё в конфиге вот что:

ip nat inside source list 15 interface GigabitEthernet0/0 overload

последний параметр на что оказывает влияние?

 

Этот параметр указывает что будет работать PAT port address transletion т.е. источники трансляции указаны в акцес листе 15 и все это будет выходить через интерфейс GigabitEthernet0/0 порты для каждой трансяции естесно будут разные.

Posted

cMex, пулю, не понял как посмотреть трансляции конкретного пользователя :(

sh ip nat translations vrf ?

 

по статистке перед тупизной картина такая:

 

sh ip nat statistics:

 

Total active translations: 86985 (0 static, 86985 dynamic; 86982 extended)

Outside interfaces:

GigabitEthernet0/0

Inside interfaces:

Virtual-Template1, Virtual-Access2.1, Virtual-Access2.2, Virtual-Access2.3

...

Hits: 282085850 Misses: 5570448

CEF Translated packets: 283650812, CEF Punted packets: 4705122

Expired translations: 5777036

Dynamic mappings:

-- Inside Source

[id: 1] access-list 15 interface GigabitEthernet0/0 refcount 86963

Queued Packets: 1

 

 

Posted

Как выше посоветовал Nailer необходимо попытаться уменьшить таймауты на трансляции и попытаться в момент прихода проблем сделать clear ip nat translations. Если сразу после сброса таблицы трансляций некоторое количество времени опять все будет нормально работать, то это опять же подтвердит, что надо уменьшать таймауты.

Посмотрите еще вот сюда: http://www.cisco.com/en/US/tech/tk648/tk36...080094c32.shtml

Posted (edited)
sh ip nat statistics:

Total active translations: 86985 (0 static, 86985 dynamic; 86982 extended)

Outside interfaces:

GigabitEthernet0/0

Inside interfaces:

Virtual-Template1, Virtual-Access2.1, Virtual-Access2.2, Virtual-Access2.3

...

[id: 1] access-list 15 interface GigabitEthernet0/0 refcount 86963

Обязательно используйте рецепт Nailer + сделать пул для nat с overload (а не overload Gi0/0, а то у вас получается 2^16 доступных портов при 86985 active translation)

Edited by AN111
Posted (edited)

таймауты пока поставил такие:

ip nat translation timeout 120

ip nat translation dns-timeout 600

 

уже понимаю, что они нужны как воздух, и что моей ошибкой было то, что я их не ставил, правда пока эффекта это не дало.

 

cMex, обязательно сегодня попробую это сделать, вчера только об этом подумал, но уже после ребута.

 

AN111, а пул лучше всего сделать на дополнительном vi ? создать и туда перекинуть? или что-то типа этого замутить:

 

ip nat pool ovrld 172.16.10.1 172.16.10.1 prefix 24

ip nat inside source list 15 pool ovrld overload

Edited by terrible
Posted (edited)

http://www.cisco.com/en/US/technologies/tk...0080091cb9.html

PAT uses unique source port numbers on the Inside Global IP address to distinguish between translations. Because the port number is encoded in 16 bits, the total number could theoretically be as high as 65,536 per IP address. PAT will attempt to preserve the original source port, if this source port is already allocated PAT will attempt to find the first available port number starting from the beginning of the appropriate port group 0-5111, 512-1023 or 1024-65535. If there is still no port available from the appropriate group and more than one IP address is configured, PAT will move to the next IP address and try to allocate the original source port again. This continues until it runs out of available ports and IP addresses.

Имейте в виду также то, что при трансляции на пул адресов теоретически обмен трафиком от одного и того же клиента на один и тот же узел может придти от разных адресов, что может быть критично для HTTP-трафика, например.

Edited by cMex
Posted

Да уже от таймаутов должно было полегчать.

Ещё есть волшебные команды вроде этих:

ip nat translation timeout ХХХ

ip nat translation tcp-timeout ХХХ

ip nat translation udp-timeout ХХХ

ip nat translation max-entries all-host ХХХ

 

Имейте в виду также то, что при трансляции на пул адресов теоретически обмен трафиком от одного и того же клиента на один и тот же узел может придти от разных адресов, что может быть критично для HTTP-трафика, например.
В чём критичность то? Тема не раскрыта))

если клиент пойдёт например на ххх.ру с одним адресом, а на следующую тцп сессию на ууу.ру с другим - в чём проблема то???

Posted (edited)

Вообще, действительно, по физике процесса проблем не будет. Если xxx.ru и yyy.ru., то проблем нет. А вот если, например, форум в интернете сохраняет куки сессий пользователю с сохранением адреса входа, то при следующем коннекте мы можем получить окно ввода логина снова. Но это частности, в этом случае используется не пул, а разные access-list кого/куда натить.

Edited by cMex
Posted (edited)

У каждого свои критерии критичности, поэтому я и написал:

...что может быть критично для HTTP-трафика, например.
«Предупрежден — значит вооружен». Edited by cMex
Posted
таймауты пока поставил такие:

ip nat translation timeout 120

ip nat translation dns-timeout 600

 

уже понимаю, что они нужны как воздух, и что моей ошибкой было то, что я их не ставил, правда пока эффекта это не дало.

 

cMex, обязательно сегодня попробую это сделать, вчера только об этом подумал, но уже после ребута.

 

AN111, а пул лучше всего сделать на дополнительном vi ? создать и туда перекинуть? или что-то типа этого замутить:

 

ip nat pool ovrld 172.16.10.1 172.16.10.1 prefix 24

ip nat inside source list 15 pool ovrld overload

типа того +

ip nat translation finrst-timeout 15

ip nat translation syn-timeout 15

ip nat translation icmp-timeout 5

(я так ставлю)

 

по пулу Stak правильно сказал, пул из одного адреса проблему не решит.

Сколько ставить - смотрите от максимального количества трансляций + запас для ядерной войны (ddos, червивые трояны, etc)

один адрес - 2^16 трансляций

 

Пример:

ip nat pool ovrld 172.16.10.0 172.16.10.31 prefix 27

ip nat inside source list 15 pool ovrld overload

 

транзит на эту сеть должен проходить через циску, interface Virtual не нужен

 

Posted

установил таймауты, как и советует AN111

прописал пул /28 на всякий случай, думаю пока хватит

прописал маршрут на этот пул с вышестоящего L3

 

на яндекс вылезаю уже под IP из пула, не gi

 

полёт вроде нормальнный, сообщение может быть поправлю по результатам теста

Posted

Да нормально РАТ отработает, ни разу еще с ним проблем не было, в отличие от нат-пулов (на asa). А вот тюнинг таймаутов вас действительно спасет.

Posted

В таком случае как вы описали пожалуй что действительно возможно) Хотя имхо не критично.

Например, аська не работает. Она любит делать 2 коннекта, и если они уходят с разных ипов - не соединяется. Так что не советую натить в пул.

Posted

Nic, так и есть, аська периодически отваливается

 

Результаты:

 

Total active translations: 90940 (0 static, 90940 dynamic; 90928 extended)

 

Сервис работает нормально!

 

Выражаю благодарность:

AN111

cMex

Stak

 

Походу дела моя проблема решена, спасибо!

 

Posted

Чтобы избежать проблем прислушайтесь к моему совету и совету Nic, используйте отдельный адрес для NAT блоков ваших серых адресов, т. е., например, 10.0.0.0/24 на 172.31.0.1, 10.0.1.0/24 на 172.31.0.2 и т. д. Это поможет вам избежать диагностирования проблем, о которых к примеру тоже было написано.

Я рад, что вы решили проблему, успеха вам в решении задач.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.