Carrier-grade NAT
В ERICSSON SMARTEDGE
Содержание
1
2
3
4
Предпосылки внедрения
Реализация в
Настройка
Диагностика работы
SmartEdge
ПЕРЕход к IPv6
DUAL-STACK + NAT444
Radius Server
Dual Stack
CG-NAT
IPv4
PPPoE/LNS
IPv4oE
CPE
IPv6oE
› Поддержка IPv6 требуется от CPE, если CPE работает в режиме router, в
случае если bridge – то не требуется
› BRAS использует Dual Stack для каждого абонента , в случае полного
исчерпания v4 пространства , для стека v4 включается функция NAT44
(Carrier Grade)
› Поддержка IPv6 от инфраструктуры доступа и метро агрегации не
требуется
Access
Node
BRAS
IPv6
› Каждый стек управляем со стороны AAA
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 3
Оптимальный дизайн NAT
Распределённая модель,
Интегрированный CG-NAT
N A T
N A T
N A T
N A T
N A T
NAT
N A T
N A T
N A T
N A T
N A T
NAT
N A T
N A T
N A T
N A T
N A T
NAT
N A T
N A T
N A T
N A T
N A T
NAT
N A T
N A T
N A T
N A T
N A T
N A T
N A T
N A T
N A T
N A T
NAT
NAT
› Нет влияния на путь прохождения трафика
› Управление NAT политикой со стороны AAA
› Отсутствие дополнительной точки отказа в виде NAT фермы
› Обработка трафика без дополнительных
специализированных устройств
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 4
Содержание
1
2
3
4
Предпосылки внедрения
Реализация в
Настройка
Диагностика работы
SmartEdge
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 5
Что такое CG-NAT в SMARTEDGE ?
› Поддержка с SEOS 11.1
› Лицензируемая функция
– Наличие лицензии обязательно
– Без лицензии конфигурация недоступна
› Поддержка RFC: 4787 (UDP), 5382 (TCP) 5508 (ICMP), draft-
nishitani-cgn
› Поддержка Address Pairing (soft and hard limit)
› Поддержка logging/tracing
› Поддержка всех типов абонентов(PPPoE,CLIPS,LNS)
– Для LNS поддерживается только CG-NAT
› Поддержка Full Cone NAT для UDP и TCP
› Трансляция фрагментированных пакетов.
› Поддержка UDP Refresh
› Поддержка ICMP Notifications
› Количество трансляций
– PPA2/3, SE100 – 2М активных трансляций на модуль
– Количество трансляций фиксировано
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 6
Содержание
1
2
3
4
Предпосылки внедрения
Реализация в
Настройка
Диагностика работы
SmartEdge
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 7
CGnat – АКТИВАЦИЯ ЛИЦЕНЗИи
› Legacy NAT ->
› CGNAT ->
›
Активация лицензии
необходима лицензия
без лицензии
:
› software license
› nat enhanced encrypted 1 …
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 8
CGnat – создание политики
› Legacy NAT ->
без
enhanced
› CGNAT -> keyword enhanced
›
Создание политики
:
› nat policy basic_nat enhanced
› ...
›
Ключевое слово в
CLI
для создания
enhanced
CG-NAT
политики
-
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 9
CGnat – POINT to Multipoint
sessions for TCP overview
Point to point
One internal –one remote endpoint
Remote
Internal
NAT
Remote
Point to multipoint
One internal – more remote
endpoint
Remote
Internal
NAT
Remote
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 10
НАСТРОЙКА CGnat – POINT to
Multipoint sessions for TCP
› context nat_context
› nat policy basic_nat enhanced
› ! Default class
› drop
› ! Named classes
› access-group basic_nat_rules
› class yes_p2mp
› pool NAPT_POOL local
› endpoint-independent filtering udp
› endpoint-independent filtering tcp
› timeout abandoned 1800
›
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 11
CGnat – ТРАНСЛЯЦИЯ
ФРАГМЕНТИРОВАННЫХ ПАКЕТОВ
› Legacy NAT -> фрагментированные пакеты уничтожаются (<0.2%)
› CGNAT -> фрагментированные пакеты транслируются
› Поддержка TCP,UDP,ICMP(за исключением ICMP Error)
› Минимальная длина пакета – 220 Байт(включая заголовок)
› Условия включения:
– В контексте отсутствует сконфигурированный NAT пул с блоками портов.
– В контексте отсустствует NAT политика привязанная к абоненту.
– В контексте отсуствует NAT пул привязанный к политике.
› Условия отключения:
– В контексте отсустствует NAT политика привязанная к абоненту.
– В контексте отсуствует NAT пул привязанный к политике.
› Настройка на контекст:
› context local
› [no] nat fragments
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 12
CGnat – INBOUND Refresh
behavior for UDP overview
inbound-refresh udp no inbound-refresh udp
NAT
timeout
BANG!
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 13
no timeout
NAT
НАСТРОЙКА CGNAT - INBOUND
Refresh behavior
› no inbound-refresh udp
› inbound-refresh udp
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 14
CGNAT - БЛОКИ ПОРТОВ с
ДИАПАзонами IP адресов
› Legacy NAT -> 1 IP c
› Enhanced CGNAT ->
портов
›
Настройка диапазона адресов с блоками портов
› context nat_context
› ip nat pool NAPT_POOL napt multibind
› address 10.10.10.1 to 10.10.10.99 port-block 1 to 15
блоком портов
Диапазон адресов с блоками
:
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 15
CGNAT – ОБЗОР ЛОГГИРОВАНИЯ
Internal
Context info
Block assignment
Block unassignment
NAT
Remote
Log
server
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 16
CGNAT - ОБЗОР ЛОГГИРОВАНИЯ
Содержание сообщения в коллектор
Context Info Block Assignment Block Un-assignment
CONTEXT_ID CONTEXT_ID CONTEXT_ID
CONTEXT_NAME ASSIGN_TS_SEC ASSIGN_TS_SEC
IPV4_INT_ADDR UNASSIGN_TS_SEC
IPV4_EXT_ADDR IPV4_INT_ADDR
EXT_PORT_FIRST IPV4_EXT_ADDR
EXT_PORT_LAST EXT_PORT_FIRST
EXT_PORT_LAST
:
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 17
CGNAT – ОБЗОР ЛОГИРОВАНИЯ
Логгируемые поля
Field Type Value Length Description
CONTEXT_ID 24628 4 Internal context ID
CONTEXT_NAME 24629 64 Zero terminated context Name
ASSIGN_TS_SEC 24630 4 Seconds of UNIX timestamp for assign
UNASSIGN_TS_SEC 24631 4 Seconds of UNIX timestamp for unassign
IPV4_INT_ADDR 24632 4 Internal IPv4 address
IPV4_EXT_ADDR 24633 4 External IPv4 address
:
(bytes)
EXT_PORT_FIRST 24634 2 External L4 port start
EXT_PORT_LAST 24635 2 External L4 port end
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 18
НАСТРОЙКА CGNAT -
Логгирование аллокаций
› context local
nat logging-profile nat-log-profile1
› context nat-context
nat logging-profile nat-log-profile2
transport-protocol udp
export-version v9
source-ip-address 10.10.10.1
source-port 4242
destination-ip-address 100.1.1.1 context local
destination-port 8989
dscp ef
maximum ip-packet-size 1400
› ip nat pool nat-pool napt multibind logging
logging-profile nat-log-profile1 context local
logging-profile nat-log-profile2
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 19
Useful operational commands
› show nat profile
› show nat pool
› show card x nat ctxinfo
› show card x nat profile
› show card x nat pool
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 20
CGNAT – ИСКЛЮЧЕНИЕ Портов из
пула
Port 0 Port 65535
0 - 1023 15000 - 20000 45000 - 55000
Full port range
Available
ranges
Excluded port
ranges
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 21
How to configure CGNAT Exclude port ranges from pool
› context nat_context
› ip nat pool nat-pool napt multibind
› address 85.62.163.1 to 85.62.163.14
› exclude well-known
› exclude 15000 to 20000
› exclude 45000 to 55000
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 22
Useful operational commands
› show nat pool
› show card x nat pool
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 23
CGNAT – ADDRESS PAIRING
Paired behavior Arbitrary behavior
Remote
Internal
NAT
Subscri
ber IP
Remote
Ext. IP
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 24
Internal
Subscri
ber IP
Ext. IP
Remote
NAT
Remote
НАСТРОЙКА CGNAT – ADDRESS
PAIRING
› ip nat pool poolname napt paired
› paired-mode subscriber over-subscription <users-per-IP>
[port-limit <limit>]
› or
› paired-mode subscriber [over-subscription <users-per-IP>]
port-limit <limit>
over-subscription –
внутренних адресов на один внешний адрес, без
ограничения трансляций на адрес
port-limit –
трансляций на один адрес(без привязки к протоколу
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 25
жесткое ограничение количества
мягкое ограничение количества
.
)
Настройка CGNAT - Paired
behavior
›
Пример
› context nat_context
› ip nat pool nat-pool-paired napt paired
› paired-mode subscriber over-subscription 64
› address 100.100.100.1/32
› nat policy pol-nat enhanced
1 –
64 пользователя делят один внешний адрес
› ! Default class
› pool nat-pool-paired local
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 26
НАСТРОЙКА CGNAT - Paired
behavior
›
Пример
пользователя
› context nat_context
› ip nat pool nat-pool-paired napt paired
› paired-mode subscriber port-limit 1024
› address 100.100.100.1/32
2,
жесткое ограничение количества трансляций на
› address 100.100.100.2/32
› nat policy pol-nat enhanced
› ! Default class
› pool nat-pool-paired local
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 27
НАСТРОЙКА CGNAT - Paired
behavior
›
Пример
на пользователей – 32 пользователя на 1 внешний адрес с
ограничением количества трансляций(портов) 4096 на
пользователя
› context nat_context
› ip nat pool nat-pool-paired napt paired
› paired-mode subscriber over-subscription 32 port-limit
3,
комбинирование мягкого и жесткого ограничений
4096
› address 100.100.100.1/24
› nat policy pol-nat enhanced
› ! Default class
› pool nat-pool-paired local
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 28
CGNAT – ICMP NOTIFICATION
BANG!
Internal Remote
ICMP13
›
В случае невозможности создания трансляции по тем
NAT
или иным причинам внутреннему хосту посылается
ICMP type 2 code 13 (Communication Administratively
Prohibited)
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 29
НАСТРОЙКА CGNAT – ICMP
NOTIFICATON
› nat policy pol-nat enhanced
› ! Default class
› no icmp-notification
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 30
КОНФИГУРАЦИЯ
КОНФИГУРАЦИЯ CG
КОНФИГУРАЦИЯ КОНФИГУРАЦИЯ
context local
nat logging-profile DEFAULT_NAT_LOGGING
transport-protocol udp
source 10.6.19.37 port 5000
destination 10.14.33.50 context local port 5000
dscp ef
context local
ip nat pool RESIDENTIAL_6K_PORTS napt paired-mode logging
paired-mode subscriber over-subscription 10 port-limit 6000
logging-profile DEFAULT_NAT_LOGGING context local
address 87.0.0.1 to 87.0.0.254
exclude well-known
CG----NAT
CG CG
NAT
NAT NAT
context local
nat policy RESIDENTIAL_6K_PORTS enhanced
pool RESIDENTIAL_6K_PORTS local
inbound-refresh udp
icmp-notification
end
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 31
Содержание
1
2
3
4
Предпосылки внедрения
Реализация в
Настройка
Диагностика работы
SmartEdge
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 32
Утилизация NAT
› [local]Redback#show card 2 nat allocation
› Slot 2, Ingress:
› Microblock counters:
› used count : 1885
› unassigned count : 9603
› free count : 54048
› [local]Redback#
› 1 микроблок = 32 порта = 32 возможных трансляции
› Количество трансляций ~= (used count)*32
› used count = количество микроблоков использованных и алоцированных к
circuits
› unassigned count = количество микроблоков которые уже преалоцированы
в память PPA, но не используются circuits и могут быть быстро присвоены
при необходимости.
› free count = оставшееся количество свободных микроблоков .
CG-NAT SMARTEDGE | Commercial in confidence | © Ericsson AB 2012 | 2012-05-23 | Page 33