Jump to content

NAT Junipe MS-DPC

Добрый день!

 

В компании стали сипользовать MS-DPC плату на Juniper MX960 в качестве NAT (раньше NAT был на Linux серверах)

 

В процессе эксплуатации возникла проблема у абонентов которые используют NAT роутеры, а именно если у абонента авторизация на ПК и один комп в сети все работает. Если у абонента дома стоит роутер и на нем авторизация то все инет не работает.

Может кто сталкивался с такой прогблемой? возможно прицина в алгоритме NAT на MS-DPC ?

я использую следующие

nat {

pool 1-1-1-1-27 {

address-range low 1.1.1.0 high 1.1.1.31;

port {

automatic {

random-allocation;

}

deterministic-port-block-allocation block-size 252;

}

}

 

rule NAT-1-1-1 {

match-direction input;

term 192-168-0-0-19 {

from {

source-address {

192.168.0.0/19;

}

}

then {

translated {

source-pool 1-1-1-1-27;

translation-type {

deterministic-napt44;

}

}

}

}

Share this post


Link to post
Share on other sites

Попробуйте изменить настройки NAT, трафик направлять с помощью FBF в служебный RI с НАТом.

 

 

services {
   flow-monitoring {
       version-ipfix {
           template IPV4 {
               flow-active-timeout 60;
               flow-inactive-timeout 60;
               template-refresh-rate {
                   packets 1000;
                   seconds 10;
               }
               option-refresh-rate {
                   packets 1000;
                   seconds 10;
               }
               ipv4-template;
           }
       }
   }
   service-set AMS {
       nat-rules AMS;
       next-hop-service {
           inside-service-interface ams0.10;
           outside-service-interface ams0.20;
       }
   }
   service-set DELTA {
       nat-rules DELTA_REAL-IP;
       next-hop-service {
           inside-service-interface ms-0/0/0.110;
           outside-service-interface ms-0/0/0.120;
       }
   }
   nat {
       pool POOL-M9_BRAS {
           address-range low 1.1.1.2 high 1.1.1.127;
           port {
               automatic {
                   random-allocation;
               }
           }
           address-allocation round-robin;
           mapping-timeout 120;
           limit-ports-per-address 1024;
       }
       pool DELTA_REAL_IP {
           address 1.1.1.1/32;
           port {
               automatic {
                   random-allocation;
               }
           }
           address-allocation round-robin;
       }
       rule AMS {
           match-direction input;
           term OFFICE {
               from {
                   source-address {
                       172.16.1.0/24;
                   }
                   application-sets ALG-SET-noEIM-noEIF;
               }
               then {
                   translated {
                       source-pool POOL-M9_BRAS;
                       translation-type {
                           napt-44;
                       }
                       address-pooling paired;
                   }
               }
           }
           term OFFICE_IEM {
               from {
                   source-address {
                       172.16.1.0/24;
                   }
               }
               then {
                   translated {
                       source-pool POOL-M9_BRAS;
                       translation-type {
                           napt-44;
                       }
                       mapping-type endpoint-independent;
                       filtering-type {
                           endpoint-independent;
                       }
                       address-pooling paired;
                   }
               }
           }
           term BRAS {
               from {
                   source-prefix-list {
                       BRAS_NETWORK_NAT;
                   }
                   application-sets ALG-SET-noEIM-noEIF;
               }
               then {
                   translated {
                       source-pool POOL-M9_BRAS;
                       translation-type {
                           napt-44;
                       }
                       address-pooling paired;
                   }
               }
           }
           term BRAS_WITH_EIM {
               from {
                   source-prefix-list {
                       BRAS_NETWORK_NAT;
                   }
                   application-sets ALG-SET-EIM-EIF;
               }
               then {
                   translated {
                       source-pool POOL-M9_BRAS;
                       translation-type {
                           napt-44;
                       }
                       address-pooling paired;
                   }
               }
           }
           term BRAS_IEM {
               from {
                   source-prefix-list {
                       BRAS_NETWORK_NAT;
                   }
               }
               then {
                   translated {
                       source-pool POOL-M9_BRAS;
                       translation-type {
                           napt-44;
                       }
                       mapping-type endpoint-independent;
                       filtering-type {
                           endpoint-independent;
                       }
                       address-pooling paired;
                   }
               }
           }

Share this post


Link to post
Share on other sites

Спасибо за ответ. попробую завтра данный конфиг

а что делает данная настройка

mapping-type endpoint-independent;

filtering-type {

endpoint-independent;

}

Share this post


Link to post
Share on other sites

2.2. Endpoint Mapping

 

When a host in a private realm initiates an outgoing session to a

host in the public realm through a NAT device, the NAT device assigns

a public endpoint to translate the private endpoint so that

subsequent response packets from the external host can be received by

the NAT, translated, and forwarded to the private endpoint. The

assignment by the NAT device to translate a private endpoint to a

public endpoint and vice versa is called Endpoint Mapping. NAT uses

Endpoint Mapping to perform translation for the duration of the

session.

 

2.3. Endpoint-Independent Mapping

 

"Endpoint-Independent Mapping" is defined in [bEH-UDP] as follows:

 

The NAT reuses the port mapping for subsequent packets sent from

the same internal IP address and port (X:x) to any external IP

address and port.

 

2.4. Endpoint-Dependent Mapping

 

"Endpoint-Dependent Mapping" refers to the combination of "Address-

Dependent Mapping" and "Address and Port-Dependent Mapping" as

defined in [bEH-UDP]:

 

Address-Dependent Mapping

 

The NAT reuses the port mapping for subsequent packets sent from

the same internal IP address and port (X:x) to the same external

IP address, regardless of the external port.

Share this post


Link to post
Share on other sites

Address Pooling — все соединения с одного серего IP транслируются в один и тот же белый. Рекомендуется включать, иначе могут возникнуть проблемы с приложениями, устанавливающими несколько сессий (в случае, если произойдёт трансляция в разные белые IP).

EIM (Endpoint Independent Mapping) — соединениям с одним и тем же сочетанием серый IP/source port назначается то же сочетание белый IP/external source port.

Share this post


Link to post
Share on other sites

Попробовал новый конфиг. Ситуация аналогичная, а именно у тех абонентов кто не пользуется рострами (дома нет NAT) работает а у тех кто за NAT нет.

какое примерно соотношение белых и серых ip Вы принимаете для nat ? какой выбираете block-size 252? может быть просто не хватает сессий на абонентов ? или происходит несоответствие портов?

Share this post


Link to post
Share on other sites

возникла проблема у абонентов которые используют NAT роутеры, а именно если у абонента авторизация на ПК и один комп в сети все работает. Если у абонента дома стоит роутер и на нем авторизация то все инет не работает

а брас где? и как он него трафик идет к НАТу

вот настройка именно для MS-DPC, попробуйте так

https://habrahabr.ru/post/209298/

Share this post


Link to post
Share on other sites

попробовал настройку по примеру, все аналогично. Брас на том же MX находиться только в своем routing-instance . т.е. NAT в своем BNG своем между ними MPLS route-leaking

Share this post


Link to post
Share on other sites

попробовал настройку по примеру, все аналогично. Брас на том же MX находиться только в своем routing-instance . т.е. NAT в своем BNG своем между ними MPLS route-leaking

 

А вообще пробовали подебажить ? снять дамп трафика проблемного клиента , проверить как создаются трансляции на MX ну и тому подобное

Share this post


Link to post
Share on other sites

Да дебаг снимал вот что видно

 

run show services nat deterministic-nat nat-port-block 172.28.26.250

Service set: SS-DET-NAT-1-2

Interface: sp-2/1/0

NAT pool: 1-1-1-0-27

Internal Host: 172.28.26.250, NAT IP Address: 1.1.1.26, NAT Port Start: 63772, NAT Port End: 64023

 

run show services stateful-firewall flows | match 172.28.26.250

UDP 172.28.26.250:34368 -> 109.196.177.5:47913 Forward I 2

NAT source 172.28.26.250:34368 -> 11.1.1.26:63992

NAT dest 1.1.1.26:63928 -> 172.28.26.250:35130

NAT dest 1.1.1.26:63817 -> 172.28.26.250:33647

NAT dest 1.1.1.26:63919 -> 172.28.26.250:33941

NAT dest 1.1.1.26 -> 172.28.26.250

NAT dest 1.1.1.26:63935 -> 172.28.26.250:33531

TCP 172.28.26.250:33210 -> 173.194.32.191:443 Forward I 43

NAT dest 1.1.1.26:63968 -> 172.28.26.250:33232

NAT dest 1.1.1.26:63791 -> 172.28.26.250:34100

 

по логам все ок.

но ситуация, если рассматривать подробнее в том, что у абонентов (проблемных) открываются сайты и в какой то момент все висит. Есть подозрение что дело в нехватке сессий на абонентов, скорее всего они просто забвают все коннекшены а на MS-DPC стоит высокий аптайм по сохранению сессий.

кто как режет колличество сессий для абонентов?

можно ли как то выкрутить таймеры очистки сессий?

я пробовал по IDS

ids {

rule NAT-MAX-Flow {

match-direction input;

term TORRENT {

from {

applications all-udp;

}

then {

session-limit {

by-source {

maximum 400;

}

}

}

}

term ANY {

then {

session-limit {

by-source {

maximum 600;

}

}

}

}

}

}

Share this post


Link to post
Share on other sites

Есть подозрение что дело в нехватке сессий на абонентов, скорее всего они просто забвают все коннекшены а на MS-DPC стоит высокий аптайм по сохранению сессий.

 

 

Ну попробуйте выделить больше , у нас в принципе стоят MS-DPC правда на абонента выделено 3x256 и никто не жалуется. При этом основная масса этих абонентов сидит за adsl роутерами. ..

 

И как показывает статистика , большей части абонентов хватает одного блока на 256 портов

Share this post


Link to post
Share on other sites

попробовал выделить блок 1024

rule правило следующие

pool 1-1-1-0-25 {

address-range low 1.1.1.0 high 1.1.1.127;

port {

automatic {

random-allocation;

}

}

address-allocation round-robin;

mapping-timeout 300;

limit-ports-per-address 1024;

}

rule NAT-1-1-2 {

match-direction input;

term 172-28-0-0-19 {

from {

source-address {

172.28.0.0/19;

}

}

then {

translated {

source-pool 1-1-1-0-25;

translation-type {

napt-44;

}

address-pooling paired;

}

}

}

}

 

rule-set DET-NAT-RSET-1-2 {

rule NAT-1-1-2;

}

 

произвел более подробную диагностику. у тех у кого не работает происходит следующие:

пинги в Инет идут до любых ресурсов причем идут пакеты различного размера хоть 32 байта хоть 1500 байт (значит нат происходит иначе бы пинки даже не шли)

но страницы при этом не открываются (такая ситуация только у нескольких абонентов, например из 3000 у 800 человек)

 

 

у меня есть предположение что может дело в MTU

подскажите как можно применить команду аналог cisco tcp-mss

 

хотел сделать по этому мануале https://kb.juniper.net/InfoCenter/index?page=content&id=KB24352&actp=search

ноу меня все интерфейсы sp-x/0/0 заняты

Share this post


Link to post
Share on other sites

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.