NAT Cisco router с един или два провайдера на Интернет – част 2

NAT Cisco router с един или два провайдера на Интернет – част 2

производител: cisco

cisco1811-2

Ограничение на скороста с rate-limit

В първа част конфигурирах в основни линии един cisco маршрутизатор зад NAT (nat cisco router). Тази конфигурация, обаче е недостатъчна за рутер в рамките на един офис или фирма очаквайки да има “ен” на брой потребители зад него. Едно от нещата, които ни липсват е ограничение на трафикa на потребителите. В днешно време p2p трафика е основния виновник за препълване на канала осигурен ни от доставчика. Преди известно време бях голям привърженик на приоритизацията на трафика, (QOS) но с течение на времето моят скромен опит показа, че в много малко ситуации това е нужно, защото повечето потребители въобще не разбират смисъла на приоритизацията, а по скоро я усещат като рестрикция. Имено поради тази причина ще използвам най простото ограничение на трафика в cisco с дисциплината rate-limit. Мисля, че трябва да спомена, че има още причини да използвам rate-limit. От една страна cisco IOS прави разлика между физически интерфейс и vlan, а аз искам да осъществя ограничението на трафика само на vlan 10, защото имаме два доставчика тоест два WAN-a и не искам да описвам правила на другите интерфейси. Cisco IOS предлага ограничение на трафика на vlan с traffic-shape или с rate-limit. traffic-shape обаче отпада, защото работи само в едната посока, output което от своя страна автоматично ни оставя само един избор rate-limit

Тъй като човек никога не знае колко правила ще създаде в своя shaper ще използвам разширената (extended) access-list-а, в един номер ще използвам и двете посоки на пакетите създадени от определен ип адрес. Така нареченото “закачване” става в самия интерфеис, vlan 10 като също се оказват посоките на пакетите. Нарочно съм увеличил малко буфера (burst) от една страна да не товари самият рутер, а от друга на speedtest-а стрелката скача много над ограничението и после плавно пада до оказаното в рутера идеята на което е, че нашата цел е не да създадем рестрикция на скороста, а да я балансираме да не може един потребител да запълни канала . Примера, който ще дам по долу е за следните ип адреси и ограничения:

192.168.10.99 – 10Mbits down 5Mbits up
192.168.10.98 – 20Mbits down 10Mbits up
192.168.10.97 – 40Mbits down 20Mbits up

access-list 2000 permit ip host 192.168.10.99 any
access-list 2000 permit ip any host 192.168.10.99
interface vlan10
rate-limit output access-group 2000 10485760 1966080 3932160 conform-action transmit exceed-action drop
rate-limit input access-group 2000 5242880 983040 1966080 conform-action transmit exceed-action drop
 
access-list 2001 permit ip host 192.168.10.98 any
access-list 2001 permit ip any host 192.168.10.98
interface vlan10
rate-limit output access-group 2001 20971520 3932160 7864320 conform-action transmit exceed-action drop
rate-limit input access-group 2001 10485760 1966080 3932160 conform-action transmit exceed-action drop
 
access-list 2002 permit ip host 192.168.10.97 any
access-list 2002 permit ip any host 192.168.10.97
interface vlan10
rate-limit output access-group 2002 41943040 7864320 15728640 conform-action transmit exceed-action drop
rate-limit input access-group 2002 20971520 3932160 7864320 conform-action transmit exceed-action drop

Нека все пак хвърлим един поглед как изглежда конфигурацията в running-config на рутера

!         
interface Vlan10
 description LAN
 ip address 192.168.10.1 255.255.255.0
 ip nat inside
 ip virtual-reassembly
 rate-limit input access-group 2000 5240000 983040 1966080 conform-action transmit exceed-action drop
 rate-limit input access-group 2001 10480000 1966080 3932160 conform-action transmit exceed-action drop
 rate-limit input access-group 2002 20968000 3932160 7864320 conform-action transmit exceed-action drop
 rate-limit output access-group 2000 10480000 1966080 3932160 conform-action transmit exceed-action drop
 rate-limit output access-group 2001 20968000 3932160 7864320 conform-action transmit exceed-action drop
 rate-limit output access-group 2002 41936000 7864320 15728640 conform-action transmit exceed-action drop
 ip tcp adjust-mss 1452
!         
access-list 2000 permit ip host 192.168.10.99 any
access-list 2000 permit ip any host 192.168.10.99
access-list 2001 permit ip host 192.168.10.98 any
access-list 2001 permit ip any host 192.168.10.98
access-list 2002 permit ip host 192.168.10.97 any
access-list 2002 permit ip any host 192.168.10.97
!

Вдигаики ип адреса на първия потребител 192.168.10.99 пускам един speedtest за да проверя конфигурацията

speedtest

Firewall – филтриране на портове

Моят достъп до рутера е, чрез протокола SSH и не ми е особено приятно разни оптимисти да се опитват да ми налучкват паролата, която не е името на кучето ми или рождената дата на майка ми. Затова ще филтрирам 22 порт на самия рутер само от мрежите от които вероятно ще го достъпвам за в бъдеще. Също имам и Cacti, намиращо се от към WAN порта, което чрез протокола snmp ми чертае ресурсите на рутера и ако сте стигнали до тук с четенето сигурен съм знаете колко ненадежден е snmp

access-list 100 permit udp host 85.118.95.126 host 85.118.95.35 eq snmp
access-list 100 permit tcp host 93.155.169.2 host 85.118.95.35 eq 22
access-list 100 permit tcp 85.118.95.0 0.0.0.255 host 85.118.95.35 eq 22
access-list 100 permit tcp 93.155.130.0 0.0.1.255 host 85.118.95.35 eq 22
access-list 100 permit tcp 212.233.128.0 0.0.127.255 host 85.118.95.35 eq 22
access-list 100 permit tcp 10.0.0.0 0.255.255.255 host 85.118.95.35 eq 22
access-list 100 deny   tcp any any eq 22
access-list 100 deny   udp any any eq snmp
access-list 100 permit ip any any
 
 
interface FastEthernet1
 ip access-group 100 in

Правилата от access-lista-та също се закачват на интерфейса който в случая е WAN порта.

Не мога да пропусна факта, че последното правило “access-list 100 permit ip any any” винаги трябва да е последно, защото изтривайки го ако съм зад рутера ще спре достъпа до Интернет, а ако съм влязъл през този интерфейс ще си отрежа терминала въобще. Тоест последователноста тук е много важна и правилния метод, ако искам да добавя нова мрежа или хост е да изтрия всички правила в този номер на access-lista-та по този начин:

cisco#configure 
Configuring from terminal, memory, or network [terminal]? 
Enter configuration commands, one per line.  End with CNTL/Z.
cisco(config)#interface fastEthernet 1
cisco(config-if)#no ip access-group 100 in
cisco(config-if)#exit
cisco(config)#no access-list 100
cisco(config)#

и да я създам отново цялата.

Тест с nmap

Сканираме рутера за отворени портове от отдалечена машина, която е с адрес в аксес листата

nmap-open

Сканираме рутера за отворени портове от отдалечена машина, която не е с адрес в аксес листата

nmap-closed

arp

За да повишим малко сигурноста ще направим така, че друг ип адрес не може да използва мак адрес описвайки го в arp таблицата на рутера.

cisco#configure 
Configuring from terminal, memory, or network [terminal]? 
Enter configuration commands, one per line.  End with CNTL/Z.
cisco(config)#arp 192.168.10.98 dc85.dedc.8f33 ARPA
cisco(config)#arp 192.168.10.99 f82f.a8d7.4a49 ARPA
cisco(config)#end
cisco#wr
Building configuration...
[OK]

И да проверим конфигурацията с командата show arp. Ясно се виждат статичните записи в първите два реда.

cisco#show arp 
Protocol  Address          Age (min)  Hardware Addr   Type   Interface
Internet  192.168.10.98           -   dc85.dedc.8f33  ARPA  
Internet  192.168.10.99           -   f82f.a8d7.4a49  ARPA  
Internet  85.118.95.126           1   0022.4da0.22ba  ARPA   FastEthernet1
Internet  192.168.10.67          64   40f3.08fb.6a0c  ARPA   Vlan10
Internet  192.168.10.69         100   9435.0ad9.7690  ARPA   Vlan10
Internet  192.168.10.54         102   dc85.dedc.8f33  ARPA   Vlan10
Internet  192.168.10.52           2   000e.0823.1966  ARPA   Vlan10
Internet  85.118.95.36            3   f8d1.1162.3339  ARPA   FastEthernet1
Internet  192.168.10.59         141   9435.0ad9.7690  ARPA   Vlan10
Internet  192.168.10.62           0   9c04.eb81.7915  ARPA   Vlan10
Internet  85.118.95.33            0   d4ca.6d08.6a01  ARPA   FastEthernet1
Internet  85.118.95.35            -   dc9f.db29.78d2  ARPA   FastEthernet1
Internet  192.168.10.1            -   0019.309b.e26e  ARPA   Vlan10
Internet  10.125.3.1              6   0050.c252.d2db  ARPA   FastEthernet0
Internet  10.125.3.2              -   dc9f.db29.78d3  ARPA   FastEthernet0
Internet  192.168.10.254         20   90f6.522c.fb7a  ARPA   Vlan10
cisco#

Блокирване на локален адрес

Вероятно ще се стигне и до там, че определен ип адрес от локалната мрежа трябва да се блокира по някаква причина и да няма достъп до Интернет и до рутера въобще. За целта трябва да “закача” access-list и на вътрешния интерфейс vlan 10 по следния начин.

!
access-list 101 deny ip host 192.168.10.2 any
access-list 101 deny ip host 192.168.10.22 any
access-list 101 deny ip host 192.168.10.49 any
access-list 101 permit ip any any
!
interface Vlan10
 ip access-group 101 in
!
NAT Cisco router с един или два провайдера на Интернет – част 2

nat cisco router

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.