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

Высокая загрузка от ARP input

Добрый день!

Последнее время на коммутаторе cisco 3550 вечерами появилась высокая нагрузка. Смотрел sh proc cpu - 60% загрузки от ARP input. Читал на эту тему - везде только советуют шлюз по умолчанию делать на конкретный IP, но не помогает :). Дальше копался сам: на коммутаторе используется ip unnumbered для схемы влан-на-юзера. Выдаются IP с маской /32. Вот подавляющее большинство ARP запросов именно у этих клиентов. У тех клиентов, которые работают не на ip unnumbered - arp запросов на порядки меньше. Стал смотрел debug arp. На вланах где используется ip unnumbered резовлятся вообще все пролетающие IP-адреса, а не только локальные. Вот думаю из-за этого и нагрузка, но как решить проблему не знаю.

Share this post


Link to post
Share on other sites

А клиенты как настроены?

Я настраиваю так:

 

У клиента: 123.123.123.2/24 DG:123.123.123.1

 

Циска:

int loop123123123
ip address 123.123.123.1 255.255.255.0
!
int vlan123
ip unnum loop123123123

И всё замечательно.

Share this post


Link to post
Share on other sites
А клиенты как настроены?

Я настраиваю так:

 

У клиента: 123.123.123.2/24 DG:123.123.123.1

 

Циска:

int loop123123123
ip address 123.123.123.1 255.255.255.0
!
int vlan123
ip unnum loop123123123

И всё замечательно.

Клиентам ip выдается dhcp-сервером. Маска /32, а у вас /24. Может что-то с этим связано ...

 

Share this post


Link to post
Share on other sites
Клиентам ip выдается dhcp-сервером. Маска /32, а у вас /24. Может что-то с этим связано ...
начните с "understanding ip unnumbered" на сайте cisco.com, чтоб исключить всякие "может".

 

и покажите что у вас кажет sh ip arp summary ?

3550 хоть и очень хорошая железка, но запас производительности у нее скромноват (все таки старенькая серия).

Share this post


Link to post
Share on other sites
Клиентам ip выдается dhcp-сервером. Маска /32, а у вас /24. Может что-то с этим связано ...
начните с "understanding ip unnumbered" на сайте cisco.com, чтоб исключить всякие "может".

 

и покажите что у вас кажет sh ip arp summary ?

3550 хоть и очень хорошая железка, но запас производительности у нее скромноват (все таки старенькая серия).

lenina170#sh ip arp sum

373 IP ARP entries, with 87 of them incomplete

lenina170#

 

но это сейчас ... вечерами 700-800 бывает записей

 

А поводу understanding ip unnumbered, то я читал. Вот не нашел ничего по поводу того, как там ARP чего резолвит. Нашел там же на cisco.com проблему с высокой загрузкой ARP input, но там просто советуют шлюз по умолчанию делать не на физический интерфейс, а на IP, в связи с тем, что если указать шлюзом физический интерфейс, то ARPом будут резолвиться будут все пролетающие ip. У меня ситуация похожа, но как вылечить не знаю.

 

Вот цитата с cisco.com:

 

ARP Input

 

High CPU utilization in the Address Resolution Protocol (ARP) Input process occurs if the router has to originate an excessive number of ARP requests. The router uses ARP for all hosts, not just those on the local subnet, and ARP requests are sent out as broadcasts, which causes more CPU utilization on every host in the network. ARP requests for the same IP address are rate-limited to one request every two seconds, so an excessive number of ARP requests would have to originate for different IP addresses. This can happen if an IP route has been configured pointing to a broadcast interface. A most obvious example is a default route such as:

 

ip route 0.0.0.0 0.0.0.0 Fastethernet0/0

In this case, the router generates an ARP request for each IP address that is not reachable through more specific routes, which practically means that the router generates an ARP request for almost every address on the Internet. For more information about configuring next hop address for static routing, see Specifying a Next Hop IP Address for Static Routes.

 

Alternatively, an excessive amount of ARP requests can be caused by a malicious traffic stream which scans through locally attached subnets. An indication of such a stream would be the presence of a very high number of incomplete ARP entries in the ARP table. Since incoming IP packets that would trigger ARP requests would have to be processed, troubleshooting this problem would essentially be the same as troubleshooting high CPU utilization in the IP Input process.

 

Share this post


Link to post
Share on other sites
покажите конфигурации интерфейсов с адресами

Конфигурация лупбэка и юзерского влана:

 

 

lenina170#sh int loopback2

Loopback2 is up, line protocol is up

Hardware is Loopback

Internet address is 10.13.5.2/32

MTU 1514 bytes, BW 8000000 Kbit, DLY 5000 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation LOOPBACK, loopback not set

Keepalive set (10 sec)

Last input 02:06:01, output never, output hang never

Last clearing of "show interface" counters never

Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0

Queueing strategy: fifo

Output queue: 0/0 (size/max)

5 minute input rate 0 bits/sec, 0 packets/sec

5 minute output rate 0 bits/sec, 0 packets/sec

0 packets input, 0 bytes, 0 no buffer

Received 0 broadcasts (0 IP multicasts)

0 runts, 0 giants, 0 throttles

0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort

1 packets output, 49 bytes, 0 underruns

0 output errors, 0 collisions, 0 interface resets

0 output buffer failures, 0 output buffers swapped out

lenina170#

 

 

 

 

lenina170#sh int vl 600

Vlan600 is up, line protocol is up

Hardware is EtherSVI, address is 0017.9522.2600 (bia 0017.9522.2600)

Interface is unnumbered. Using address of Loopback2 (10.13.5.2)

MTU 1500 bytes, BW 1000000 Kbit, DLY 10 usec,

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation ARPA, loopback not set

Keepalive not supported

ARP type: ARPA, ARP Timeout 04:00:00

Last input 01:25:04, output 01:25:05, output hang never

Last clearing of "show interface" counters never

Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0

Queueing strategy: fifo

Output queue: 0/40 (size/max)

5 minute input rate 0 bits/sec, 0 packets/sec

5 minute output rate 0 bits/sec, 0 packets/sec

191 packets input, 12679 bytes, 0 no buffer

Received 0 broadcasts (0 IP multicasts)

0 runts, 0 giants, 0 throttles

0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored

111 packets output, 6663 bytes, 0 underruns

0 output errors, 0 interface resets

0 output buffer failures, 0 output buffers swapped out

lenina170#

 

 

 

 

lenina170#sh ip int vl 600

Vlan600 is up, line protocol is up

Interface is unnumbered. Using address of Loopback2 (10.13.5.2)

Broadcast address is 255.255.255.255

MTU is 1500 bytes

Helper address is 10.0.54.2

Directed broadcast forwarding is disabled

Outgoing access list is not set

Inbound access list is not set

Proxy ARP is enabled

Local Proxy ARP is disabled

Security level is default

Split horizon is enabled

ICMP redirects are always sent

ICMP unreachables are always sent

ICMP mask replies are never sent

IP fast switching is enabled

IP CEF switching is enabled

IP CEF switching turbo vector

IP Null turbo vector

IP multicast fast switching is enabled

IP multicast distributed fast switching is disabled

IP route-cache flags are Fast, CEF

Router Discovery is disabled

IP output packet accounting is disabled

IP access violation accounting is disabled

TCP/IP header compression is disabled

RTP/IP header compression is disabled

Probe proxy name replies are disabled

Policy routing is disabled

Network address translation is disabled

BGP Policy Mapping is disabled

Input features: MCI Check

WCCP Redirect outbound is disabled

WCCP Redirect inbound is disabled

WCCP Redirect exclude is disabled

 

 

 

 

lenina170#sh ip int loopback2

Loopback2 is up, line protocol is up

Internet address is 10.13.5.2/32

Broadcast address is 255.255.255.255

Address determined by non-volatile memory

MTU is 1514 bytes

Helper address is not set

Directed broadcast forwarding is disabled

Multicast reserved groups joined: 224.0.0.5

Outgoing access list is not set

Inbound access list is not set

Proxy ARP is enabled

Local Proxy ARP is disabled

Security level is default

Split horizon is enabled

ICMP redirects are never sent

ICMP unreachables are always sent

ICMP mask replies are never sent

IP fast switching is enabled

IP CEF switching is enabled

IP CEF switching turbo vector

IP Null turbo vector

IP multicast fast switching is enabled

IP multicast distributed fast switching is disabled

IP route-cache flags are Fast, CEF

Router Discovery is disabled

IP output packet accounting is disabled

IP access violation accounting is disabled

TCP/IP header compression is disabled

RTP/IP header compression is disabled

Probe proxy name replies are disabled

Policy routing is disabled

Network address translation is disabled

BGP Policy Mapping is disabled

Input features: MCI Check

WCCP Redirect outbound is disabled

WCCP Redirect inbound is disabled

WCCP Redirect exclude is disabled

lenina170#

Edited by rapsody

Share this post


Link to post
Share on other sites

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

на лупбек повесить /24 или больше, через DHCP выдавать её же.

Share this post


Link to post
Share on other sites
вам уже посоветовали сменить маску, тогда арпом будут запрашиваться только адреса в подсети.

на лупбек повесить /24 или больше, через DHCP выдавать её же.

Тогда возникает другая проблема: клиентам ip выдаются совсем из разных подсетей: из 212.x.x.x и из 83.x.x.x. Какой ip мне тогда прописать на loopback и какие маски использовать ?

 

Share this post


Link to post
Share on other sites
вам уже посоветовали сменить маску, тогда арпом будут запрашиваться только адреса в подсети.

на лупбек повесить /24 или больше, через DHCP выдавать её же.

Тогда возникает другая проблема: клиентам ip выдаются совсем из разных подсетей: из 212.x.x.x и из 83.x.x.x. Какой ip мне тогда прописать на loopback и какие маски использовать ?

выделите большие диапазоны белых(хоть /24) и вешайте всё на один loopback(как secondary)

потеряете по 2 адреса из каждой подсети.

Share this post


Link to post
Share on other sites

Точно не помню уже команду но может помоч

в глобальном режиме, что то типо

no ip source routing enable

используй "?" такая команда есть

Share this post


Link to post
Share on other sites
Клиентам ip выдается dhcp-сервером. Маска /32 ...
Вы уверены, что винда так умеет? И как ей искать при этом DG?

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

А Вы про кривую индусскую винду...

Share this post


Link to post
Share on other sites
Клиентам ip выдается dhcp-сервером. Маска /32 ...
Вы уверены, что винда так умеет? И как ей искать при этом DG?

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

А Вы про кривую индусскую винду...

Винда умеет. Более того винда умеет делать дефолт шлюз таким же как и ip адрес клиента. Как уж это так происходит я хз :)

Ну в общем проблема решилась почти как вы писали :) сделал на лупбек /23 из нее же и выдаю адреса клиентам. Пришлось конечно у юзеров ипы менять, но хоть нагрузка упала. Другого способа не нашлось. Если вешать на лупбек подсеть как secondary - то юзеры из этой подсети один хрен все время посылают кучу арп-запросов.

 

 

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