Jump to content
Калькуляторы

Негативное влияние пиринговых площадок на сеть. MSK-IX, DATA-IX, AMS-IX, DE-CIX

Да я бы с радостью, но нифига у нексуса 3064 нет mac acl.

Share this post


Link to post
Share on other sites
13 часов назад, RN3DCX сказал:

А что это за маки?

Это ipv6 богадельня. Случается, что клиентские CPE сходят с ума (этим поделия блинка отличаются с завидным постоянством) и начинают срать в WAN-порт флудом dhcpv6-запросов на эти MAC'и. И когда темп запросов доходит до 50-100 в секунду, начинает плохеть control-plane всем коммутаторам, через которые эти запросы проходят. Даже если DHCP-snooping и ipv6 везде выключены.

Share this post


Link to post
Share on other sites
4 часа назад, taf_321 сказал:

Это ipv6 богадельня. Случается, что клиентские CPE сходят с ума (этим поделия блинка отличаются с завидным постоянством) и начинают срать в WAN-порт флудом dhcpv6-запросов на эти MAC'и. И когда темп запросов доходит до 50-100 в секунду, начинает плохеть control-plane всем коммутаторам, через которые эти запросы проходят. Даже если DHCP-snooping и ipv6 везде выключены.

Ну сейчас немного мимо. Мы же тут про IX-ы говорим, а там "сходят" с ума не клиентские CPE, а операторские ASBR-ы :) ну не совсем сходят с ума, надо смотреть на распределение кол-ва запросов по макам в ipv6-multicast на DE-CIX. Ну т.е. если равномерно, то это значит ipv6 такой плохой протокол (точнее, его сигнализация), если нет - ну значит кто-то подключился каким-нибудь шлакотиком или длинком к IX

Share this post


Link to post
Share on other sites

может попробовать сменить native VLAN на 911 и повесить на него VACL резать все и вся.

И на 2282 также VACL прибив IPv6

Share this post


Link to post
Share on other sites
В 25.12.2018 в 06:32, taf_321 сказал:

Режьте пакеты по dst MAC - 33:33:ff:00:00:01 и 33:33:ff:00:00:02

Именно резать а не дропать?

Хотелось бы увидеть пример на циске.

Share this post


Link to post
Share on other sites
2 hours ago, feeman said:

Именно резать а не дропать?

это одно и тоже.

 

2 hours ago, feeman said:

Хотелось бы увидеть пример на циске.

На какой модели?

Share this post


Link to post
Share on other sites

И с VACL на nexus 3064 ничего не вышло) ошибку не помню уже, но не дал применить к влану

Share this post


Link to post
Share on other sites
11 hours ago, 704114 said:

И с VACL на nexus 3064 ничего не вышло) ошибку не помню уже, но не дал применить к влану

Да к сожалению VACL там только  IPv4.

 

Вот пример  CoPP

Spoiler

class copp-s-v6routingProto2
    police pps {если нету IPv6, то можно поставить уменьшить}

 

Возможно дело в TCAM

Spoiler

By default, all IPv6 TCAMs are disabled (the TCAM size is set to 0)

 

сделайте вывод

show hardware access-list tcam region

show ipv6 access-lists

switch(config)# show hardware profile tcam region

 

 

Share this post


Link to post
Share on other sites

Так, нашел в какую сторону копать.

Дело действительно в COPP,  а конкретно в:

 

  class-map copp-s-arp (match-any)
      police pps 20
        OutPackets    10021095
        DropPackets   2404530

 

По дефолту стояло значение police pps 200, понизил до 20, коммутатор начал умирать в том числе с одним вланом от MSK-IX.

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

 

Вопрос как правильно разрулить это дело? police pps 2000 выставить? Но во время какого-нибудь шторма это может навредить.

Почему вообще коммутатор отправляет на процессор arp пакеты? Я понимаю если бы у меня был ip интерфейс, а тут то чистые l2 vlan ы от пирингов. Свитч их должен просто пропускать без анализа, или я не понимаю логику работы на l2?

 

Вот такую фигню нашел. Очень надеюсь что дропы не затрагивают транзитные arp паеты, иначе жесть.

https://community.cisco.com/t5/data-center-switches/n3k-arp-packets-in-l2-vlan-increase-copp-counters/td-p/3693772

Придется теперь проверять что не дропается транзит.

 

 

Edited by Sergey R.

Share this post


Link to post
Share on other sites

@Sergey R. 

Не знаю как конкретно на Cisco Nexus, но всякой китайщине аля DCN казалось бы транзитные arp, dhcp и т.д. попадали на CPU. Одно время, заставил китайцев это передать, но потом (в более новых версиях ПО) опять стало по-старому (скорее всего, мне показывали какой-нибудь фейк). И да, сигнализационный трафик транзитных вланов дропался если cpu не справлялся. Вообщем, надо уточнять этот вопрос в саппорте Cisco (просто копируется трафик на cpu или идёт сквозь cpu). Например, на huawei s-свитчах, имеется задержка в изучении mac-ов в vpls, т.е. задерживается в очереди на обработку на cpu, при этом сам трафик коммутируется, но обратный, естественно, идёт как бродкаст пока мак не изучится (т.е. это режим копирования, а не сквозной)

 

Радикальное решение таких проблем - делать по-олдскульному, а именно OOB mgmt (судя по даташиту, на cisco nexus 3064 2 таких порта). Эти порты типа не участвуют в коммутации трафика и поэтому, как минимум, управление вы не потеряете по причине дропа arp-ов. Но в самом деле тут тоже могут быть нюансы, зависит от того как именно устроен CoPP и на каком участке взаимодействия компонент он режет трафик, даже у одного вендора это бывает сделано по-разному.

И ещё можно запилить мегакостыль в виде static-арпа в mgmt vlan с обеих сторон (как со стороны nexus, так и там где он терминируется), но сами понимаете во что это выльется при замене оборудования

 

2 часа назад, Sergey R. сказал:

я не понимаю логику работы на l2?

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

Share this post


Link to post
Share on other sites
В 02.01.2019 в 22:53, Sergey R. сказал:

  class-map copp-s-arp (match-any)

Вот такую фигню нашел. Очень надеюсь что дропы не затрагивают транзитные arp паеты, иначе жесть.

https://community.cisco.com/t5/data-center-switches/n3k-arp-packets-in-l2-vlan-increase-copp-counters/td-p/3693772

Придется теперь проверять что не дропается транзит.

 

 

 

 Кто-то арп транзитит ? Обуеть...

Share this post


Link to post
Share on other sites
16 часов назад, YuryD сказал:

 Кто-то арп транзитит ? Обуеть...

длинк dxs-3600 на древних софтах арпы из транзитных л2 поднимал на проц. китайцы грешат таким как выше уже сказали. 

 

а по теме, там блэкхолинга маков нет? может дст маки для ipv6 nd в блэкхол загнать?

Share this post


Link to post
Share on other sites
1 час назад, zhenya` сказал:

длинк dxs-3600 на древних софтах арпы из транзитных л2 поднимал на проц. китайцы грешат таким как выше уже сказали. 

 

а по теме, там блэкхолинга маков нет? может дст маки для ipv6 nd в блэкхол загнать?

ну вот такой он оем. Полечили они это, ip arp elevation

Share this post


Link to post
Share on other sites

 Дык при живом bgp зачем маки транслировать ?  Ну даете l2 - bgp тут причём ? Дали вам l2 с точек обмена - транслируйте и маки и вланы. Для сей хрени мне пришлось на входе с одного из обменников положить отдельный коммутатор, который вланы умеет. И соотв распихано по вланам-портам, где инет с обменника, а где l2 клиента. Ибо моя брокада таких фокусов не смогла. Далее - да хоть что они в свой влан пусть засунут. ткам от нага пока пережевывает.

Share this post


Link to post
Share on other sites

Благодарю, да, согласен что идеальный вариант это OOB mgmt, как раз его сделаем в будущем. 

Но пока вполне хватит static arp. Оборудование меняется не так уж часто, также проблем никаких не вижу.

Share this post


Link to post
Share on other sites
В 05.01.2019 в 10:01, Butch3r сказал:

ну вот такой он оем. Полечили они это, ip arp elevation

а можно детали? а то гугл выдаёт лишь пару упоминаний на форуме длинка

Share this post


Link to post
Share on other sites
4 минуты назад, s.lobanov сказал:

а можно детали? а то гугл выдаёт лишь пару упоминаний на форуме длинка

http://forum.dlink.ru/viewtopic.php?f=2&t=164063

 

 

И вот такой же фикс появился для DGS-3630

Share this post


Link to post
Share on other sites
В 02.01.2019 в 20:53, Sergey R. сказал:

Вопрос как правильно разрулить это дело? police pps 2000 выставить? Но во время какого-нибудь шторма это может навредить.

 

Провел тест на Nexus 3048

Сделал

  class copp-s-arp
    police pps 2000

И отправил в транзитный влан 1000pps  arp запросов

 

# sh processes cpu sort | in arp
23154          134        83   1625   7.00%  arp
# sh processes cpu sort | in arp
23154          134        83   1625   9.50%  arp
# sh processes cpu sort | in arp
23154          134        83   1625   7.00%  arp
# sh processes cpu sort | in arp
23154          134        83   1625   6.50%  arp

На мой взгляд ограничение по s-arp в Copp можно поднять до 2000-3000pps

 

Share this post


Link to post
Share on other sites

Добрый день, коллеги.

 

Планируем схему включения пирингов и IX через Nexus 3064, поэтому заинтересовался данной темой. А что если vlan управления вынести в отдельные порты, по которым не будет передаваться транзитный трафик - это решит проблему попадания arp на control-plane?

Пока есть только предположение, что при отсутствии vlan'а управления на порту трафик не будет попадать на проц.

 

Чтобы было понятнее нарисовал как мог планируемую схему включения.

 

m9.thumb.png.9f5aa6eaaa19ef9d59a86bc8430dd03e.png

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

 

PS Подключить IX напрямую в джун конечно можно, но пока интересно рассмотреть такой вариант, т.к. у MX204 не так уж много 10G портов.

Share this post


Link to post
Share on other sites

Я думаю тут только практика покажет. Ничего не мешает включиться и посмотреть. У нас при наличии двух пирингов MSK и DATA нексусы работали несколько лет и проблему не замечали. Хотя controle plane уже дропал пакетики. После добавления европейских пирингов коммутаторы уже ложились по управлению несколько раз за день. 

На данный момент кстати всё хорошо, как тут обсуждали - прописали static arp на нескольких железках и никаких вопросов.

 

В 18.01.2019 в 18:36, starik-i-more сказал:

 

Провел тест на Nexus 3048

Сделал


  class copp-s-arp
    police pps 2000

И отправил в транзитный влан 1000pps  arp запросов

 


# sh processes cpu sort | in arp
23154          134        83   1625   7.00%  arp
# sh processes cpu sort | in arp
23154          134        83   1625   9.50%  arp
# sh processes cpu sort | in arp
23154          134        83   1625   7.00%  arp
# sh processes cpu sort | in arp
23154          134        83   1625   6.50%  arp

На мой взгляд ограничение по s-arp в Copp можно поднять до 2000-3000pps

 

Пробовал) до 2000 поднимал, MSK и DATA жили но совместно с DE-CIX всё равно дропались пакетики, потому остановился на static arp. Неудобств никаких не вижу тут, всё -таки это не домовой свитч который часто меняется.  

Share this post


Link to post
Share on other sites

Воткнул два сервака в Nexus 3064. С помощью arping создал поток arp запросов в 14 тыс pps. Загрузка следующая

# show processes cpu sort | i arp
 3553          215      2158     99   1.45%  arp

При этом полисинг arp пакетов

    class copp-s-arp
      police pps 1 

менял от 1 до 2000, но на загрузку проца это никак не повлияло.

 

Конфигурация Nexus 3064

Скрытый текст

!Command: show running-config
!Time: Mon Jan 21 11:26:19 2019

version 6.0(2)U6(8)
hostname BS-N3K

feature telnet
feature interface-vlan
feature lacp
feature lldp

no password strength-check
username admin password 5 <encrypted password>  role network-admin
ip domain-lookup
service unsupported-transceiver
ip access-list copp-system-acl-eigrp
  10 permit eigrp any 224.0.0.10/32
ipv6 access-list copp-system-acl-eigrp6
  10 permit 88 any ff02::000a/128
ip access-list copp-system-acl-icmp
  10 permit icmp any any
ip access-list copp-system-acl-igmp
  10 permit igmp any any
ip access-list copp-system-acl-ntp
  10 permit udp any any eq ntp
  20 permit udp any eq ntp any
ip access-list copp-system-acl-pimreg
  10 permit pim any any
ip access-list copp-system-acl-ping
  10 permit icmp any any echo
  20 permit icmp any any echo-reply
ip access-list copp-system-acl-routingproto1
  10 permit tcp any gt 1024 any eq bgp
  20 permit tcp any eq bgp any gt 1024
  30 permit udp any 224.0.0.0/24 eq rip
  40 permit tcp any gt 1024 any eq 639
  50 permit tcp any eq 639 any gt 1024
  70 permit ospf any any
  80 permit ospf any 224.0.0.5/32
  90 permit ospf any 224.0.0.6/32
ip access-list copp-system-acl-routingproto2
  10 permit udp any 224.0.0.0/24 eq 1985
  20 permit 112 any 224.0.0.0/24
ip access-list copp-system-acl-snmp
  10 permit udp any any eq snmp
  20 permit udp any any eq snmptrap
ip access-list copp-system-acl-ssh
  10 permit tcp any any eq 22
  20 permit tcp any eq 22 any
ip access-list copp-system-acl-stftp
  10 permit udp any any eq tftp
  20 permit udp any any eq 1758
  30 permit udp any eq tftp any
  40 permit udp any eq 1758 any
  50 permit tcp any any eq 115
  60 permit tcp any eq 115 any
ip access-list copp-system-acl-tacacsradius
  10 permit tcp any any eq tacacs
  20 permit tcp any eq tacacs any
  30 permit udp any any eq 1812
  40 permit udp any any eq 1813
  50 permit udp any any eq 1645
  60 permit udp any any eq 1646
  70 permit udp any eq 1812 any
  80 permit udp any eq 1813 any
  90 permit udp any eq 1645 any
  100 permit udp any eq 1646 any
ip access-list copp-system-acl-telnet
  10 permit tcp any any eq telnet
  20 permit tcp any any eq 107
  30 permit tcp any eq telnet any
  40 permit tcp any eq 107 any
ipv6 access-list copp-system-acl-v6routingProto2
  10 permit udp any ff02::0066/128 eq 2029
  20 permit udp any ff02::00fb/128 eq 5353
  30 permit 112 any ff02::0012/128
ipv6 access-list copp-system-acl-v6routingproto1
  10 permit 89 any ff02::0005/128
  20 permit 89 any ff02::0006/128
  30 permit udp any ff02::0009/128 eq 521
ip access-list copp-system-dhcp-relay
  10 permit udp any eq bootps any eq bootps
policy-map type network-qos jumbo
  class type network-qos class-default
    mtu 9216
system qos
  service-policy type network-qos jumbo
class-map type control-plane match-any copp-icmp
  match access-group name copp-system-acl-icmp
class-map type control-plane match-any copp-ntp
  match access-group name copp-system-acl-ntp
class-map type control-plane match-any copp-s-arp
class-map type control-plane match-any copp-s-bfd
class-map type control-plane match-any copp-s-bpdu
class-map type control-plane match-any copp-s-dai
class-map type control-plane match-any copp-s-default
class-map type control-plane match-any copp-s-dhcpreq
class-map type control-plane match-any copp-s-dhcpresp
  match access-group name copp-system-dhcp-relay
class-map type control-plane match-any copp-s-dpss
class-map type control-plane match-any copp-s-eigrp
  match access-group name copp-system-acl-eigrp
  match access-group name copp-system-acl-eigrp6
class-map type control-plane match-any copp-s-glean
class-map type control-plane match-any copp-s-igmp
  match access-group name copp-system-acl-igmp
class-map type control-plane match-any copp-s-ipmcmiss
class-map type control-plane match-any copp-s-l2switched
class-map type control-plane match-any copp-s-l3destmiss
class-map type control-plane match-any copp-s-l3mtufail
class-map type control-plane match-any copp-s-l3slowpath
class-map type control-plane match-any copp-s-mpls
class-map type control-plane match-any copp-s-pimautorp
class-map type control-plane match-any copp-s-pimreg
  match access-group name copp-system-acl-pimreg
class-map type control-plane match-any copp-s-ping
  match access-group name copp-system-acl-ping
class-map type control-plane match-any copp-s-ptp
class-map type control-plane match-any copp-s-routingProto1
  match access-group name copp-system-acl-routingproto1
  match access-group name copp-system-acl-v6routingproto1
class-map type control-plane match-any copp-s-routingProto2
  match access-group name copp-system-acl-routingproto2
class-map type control-plane match-any copp-s-selfIp
class-map type control-plane match-any copp-s-ttl1
class-map type control-plane match-any copp-s-v6routingProto2
  match access-group name copp-system-acl-v6routingProto2
class-map type control-plane match-any copp-s-vxlan
class-map type control-plane match-any copp-snmp
  match access-group name copp-system-acl-snmp
class-map type control-plane match-any copp-ssh
  match access-group name copp-system-acl-ssh
class-map type control-plane match-any copp-stftp
  match access-group name copp-system-acl-stftp
class-map type control-plane match-any copp-tacacsradius
  match access-group name copp-system-acl-tacacsradius
class-map type control-plane match-any copp-telnet
  match access-group name copp-system-acl-telnet
policy-map type control-plane copp-system-policy 
  class copp-s-selfIp
    police pps 500 
  class copp-s-default
    police pps 400 
  class copp-s-l2switched
    police pps 200 
  class copp-s-ping
    police pps 100 
  class copp-s-l3destmiss
    police pps 100 
  class copp-s-glean
    police pps 500 
  class copp-s-l3mtufail
    police pps 100 
  class copp-s-ttl1
    police pps 100 
  class copp-s-ipmcmiss
    police pps 400 
  class copp-s-l3slowpath
    police pps 100 
  class copp-s-dhcpreq
    police pps 300 
  class copp-s-dhcpresp
    police pps 300 
  class copp-s-dai
    police pps 300 
  class copp-s-igmp
    police pps 400 
  class copp-s-routingProto2
    police pps 1300 
  class copp-s-v6routingProto2
    police pps 1300 
  class copp-s-eigrp
    police pps 200 
  class copp-s-pimreg
    police pps 200 
  class copp-s-pimautorp
    police pps 200 
  class copp-s-routingProto1
    police pps 1000 
  class copp-s-arp
    police pps 1 
  class copp-s-ptp
    police pps 1000 
  class copp-s-vxlan
    police pps 1000 
  class copp-s-bfd
    police pps 350 
  class copp-s-bpdu
    police pps 12000 
  class copp-s-dpss
    police pps 1000 
  class copp-s-mpls
    police pps 100 
  class copp-icmp
    police pps 200 
  class copp-telnet
    police pps 500 
  class copp-ssh
    police pps 500 
  class copp-snmp
    police pps 500 
  class copp-ntp
    police pps 100 
  class copp-tacacsradius
    police pps 400 
  class copp-stftp
    police pps 400 
control-plane
  service-policy input copp-system-policy 
hardware profile portmode 48x10G+4x40G

snmp-server user admin network-admin auth md5 <encrypted password> priv <encrypted password> localizedkey
snmp-server community <community> group network-operator
ntp server X.X.X.X

vlan 1,4,10,74,83-84,3500
no spanning-tree vlan 1-3967,4048-4093
vrf context management


interface Vlan1

interface Vlan83
  no shutdown
  ip address 10.1.1.100/24

interface Ethernet1/1
  description uplink
  switchport mode trunk
  switchport trunk allowed vlan 10,74,83-84
  duplex full

interface Ethernet1/2

interface Ethernet1/3

interface Ethernet1/4

interface Ethernet1/5

interface Ethernet1/6

interface Ethernet1/7

interface Ethernet1/8

interface Ethernet1/9

interface Ethernet1/10

interface Ethernet1/11

interface Ethernet1/12

interface Ethernet1/13

interface Ethernet1/14

interface Ethernet1/15

interface Ethernet1/16

interface Ethernet1/17

interface Ethernet1/18

interface Ethernet1/19

interface Ethernet1/20

interface Ethernet1/21

interface Ethernet1/22

interface Ethernet1/23

interface Ethernet1/24

interface Ethernet1/25

interface Ethernet1/26

interface Ethernet1/27

interface Ethernet1/28

interface Ethernet1/29

interface Ethernet1/30

interface Ethernet1/31

interface Ethernet1/32

interface Ethernet1/33

interface Ethernet1/34

interface Ethernet1/35

interface Ethernet1/36

interface Ethernet1/37

interface Ethernet1/38

interface Ethernet1/39

interface Ethernet1/40

interface Ethernet1/41

interface Ethernet1/42

interface Ethernet1/43

interface Ethernet1/44

interface Ethernet1/45

interface Ethernet1/46

interface Ethernet1/47
  description server1-enp3s0f0
  switchport mode trunk
  switchport trunk native vlan 4
  switchport trunk allowed vlan 4,83,3500

interface Ethernet1/48
  description server2-ens3f0
  switchport mode trunk
  switchport trunk native vlan 4
  switchport trunk allowed vlan 4,10,83,3500
  duplex full

interface Ethernet1/49

interface Ethernet1/50

interface Ethernet1/51

interface Ethernet1/52

interface mgmt0
  vrf member management
clock timezone MSK 3 0
line console
line vty
boot kickstart bootflash:/n3000-uk9-kickstart.6.0.2.U6.8.bin 
boot system bootflash:/n3000-uk9.6.0.2.U6.8.bin 
ip route 0.0.0.0/0 10.1.1.1

Трафик между серваками делал и тегированным и без тега, добавлял на порт влан управления и убирал его оттуда. Разницы никакой.

 

Share this post


Link to post
Share on other sites

@crank почитайте топик, там не только в arp дело, а там ещё мезкий ipv6 multicast, который убивает CPU и не даёт нормально работать arp-процессу/потоку 

Share this post


Link to post
Share on other sites

Изоляция VLAN управления в отдельный порт никак не повлияла. Осталось проверить как будет вести себя железка при OOB подключении.

Share this post


Link to post
Share on other sites

Подключив управление в менеджмент порт проблем вообще нет. Похоже в этом случае пакеты просто не попадают под copp.

Share this post


Link to post
Share on other sites
1 час назад, crank сказал:

Подключив управление в менеджмент порт проблем вообще нет. Похоже в этом случае пакеты просто не попадают под copp.

Это хорошо, потому как в дальнейшем также хотим управление вынести в mgmt. 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this