The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Cisco 1841 - 2 NAT'а"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Маршрутизаторы CISCO и др. оборудование. (Public)
Изначальное сообщение [ Отслеживать ]

"Cisco 1841 - 2 NAT'а"  
Сообщение от MVictorL email(ok) on 23-Апр-09, 11:25 
Такая проблема:

Cisco 1841 используется для доступа в И-нет через провайдера с помощью NAT.
Появилась необходимость NAT'ить внутренний трафик на определенный IP-адрес в еще одну частную сеть сеть.
Добавил 4-х портовый модуль, включил один из 4-х интерфейсов в VLAN с нужным IP-адресом этой сети, сделал NAT и случилось следующее -- работает только один NAT, тот, который создан первым...

Что мне сделать, подскажите, пожалуйста!

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Cisco 1841 - 2 NAT'а"  
Сообщение от sh_ email(ok) on 23-Апр-09, 15:14 
Для начала нужно конфиг показать. Ну и неплохо узнать, что хотите сделать.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Cisco 1841 - 2 NAT'а"  
Сообщение от alex.krav (??) on 24-Апр-09, 08:15 
Много вариантов. Например:

ip nat pool ISP1-pool ...
ip nat pool ISP2-pool ...

ip nat inside source route-map ISP1-NAT pool ISP1-pool overload
ip nat inside source route-map ISP2-NAT pool ISP2-pool overload

route-map ISP1-NAT permit 10
match ip address ISP1-NAT
match interface ...

route-map ISP2-NAT permit 10
match ip address ISP2-NAT
match interface ...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Cisco 1841 - 2 NAT'а"  
Сообщение от wertys on 24-Апр-09, 15:15 
>[оверквотинг удален]
>ip nat inside source route-map ISP1-NAT pool ISP1-pool overload
>ip nat inside source route-map ISP2-NAT pool ISP2-pool overload
>
>route-map ISP1-NAT permit 10
> match ip address ISP1-NAT
> match interface ...
>
>route-map ISP2-NAT permit 10
> match ip address ISP2-NAT
> match interface ...

У меня тоже имеется такая проблема работает всего один NAT, хотя конфиг делал как показал  alex.krav

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Cisco 1841 - 2 NAT'а"  
Сообщение от alex.krav (??) on 25-Апр-09, 08:50 

>У меня тоже имеется такая проблема работает всего один NAT, хотя конфиг
>делал как показал  alex.krav

Как так?
Если у Вас балансировка на два выходных канала, то один NAT и должен работать (нужно так настраивать).

Если же разные приватные подсети разнесены на разные выходные каналаы разных ISP,
то будут работать оба NAT (если всё правильно настроено).

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Cisco 1841 - 2 NAT'а"  
Сообщение от wertys on 27-Апр-09, 14:41 
>[оверквотинг удален]
>>У меня тоже имеется такая проблема работает всего один NAT, хотя конфиг
>>делал как показал  alex.krav
>
>Как так?
>Если у Вас балансировка на два выходных канала, то один NAT и
>должен работать (нужно так настраивать).
>
>Если же разные приватные подсети разнесены на разные выходные каналаы разных ISP,
>
>то будут работать оба NAT (если всё правильно настроено).

Собствено ситуация следующая:

2 канали Инет оба должны натится, для Lan одна подсеть /24, нужно сделать что б все выходили через ISP 1, кроме 20 IP они выходят через ISP #2,  пробовар разорулить так

route-map test permit 10
match ip address 190
set ip next-hop "ISP #2 GW"
!
route-map test permit 20
match ip address 1
set interface Dialer1

где acl 1 вся сеть, acl 190 адреса которые должны ходить через ISP #2
  

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Cisco 1841 - 2 NAT'а"  
Сообщение от alex.krav (??) on 27-Апр-09, 20:07 

>[оверквотинг удален]
> match ip address 190
> set ip next-hop "ISP #2 GW"
>!
>route-map test permit 20
> match ip address 1
> set interface Dialer1
>
>где acl 1 вся сеть, acl 190 адреса которые должны ходить через
>ISP #2
>

Я так понимаю, этот route-map для PBR ?
Если не работают оба NAT, значит неправильно задан route-map для NAT.
Вообще проще было бы показать здесь свой конфиг.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "Cisco 1841 - 2 NAT'а"  
Сообщение от wertys on 28-Апр-09, 11:34 
>[оверквотинг удален]
> match ip address 190
> set ip next-hop "ISP #2 GW"
>!
>route-map test permit 20
> match ip address 1
> set interface Dialer1
>
>где acl 1 вся сеть, acl 190 адреса которые должны ходить через
>ISP #2
>

Ниже конфиг, задача ---- 2 инет канала нужно сделать так что вся сеть выходила через ISP 1, и несколько адресов через ISP 2, + backup при падении одного из каналов все переключается на второго. Маршрутизатор cisco 2811
    

ip sla monitor 10
type echo protocol ipIcmpEcho ISP1 GW source-interface Dialer1
timeout 2000
threshold 2
frequency 3
ip sla monitor schedule 10 life forever start-time now
ip sla monitor 20
type echo protocol ipIcmpEcho ISP 2 GW source-ipaddr  
timeout 2000
threshold 2
frequency 3
ip sla monitor schedule 20 life forever start-time now
!
!
voice-card 0
no dspfarm
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
track 123 rtr 10 reachability
!
track 124 rtr 20 reachability
!
!
!
!
!
interface FastEthernet0/0
description $ETH-LAN$$ETH-SW-LAUNCH$$INTF-INFO-FE 0/0$
ip address 10.10.10.1 255.255.255.248
duplex auto
speed auto
!
interface FastEthernet0/1
description PPPoE
no ip address
duplex auto
speed auto
pppoe enable group global
pppoe-client dial-pool-number 1
!
interface FastEthernet0/0/0
description LAN
switchport access vlan 2
!
interface FastEthernet0/0/1
switchport access vlan 30
!
interface FastEthernet0/0/2
shutdown
!
interface FastEthernet0/0/3
shutdown
!
interface Vlan2
description LAN L3
ip address 192.168.1.1 255.255.255.0
ip nat inside
ip virtual-reassembly
!
interface Vlan30
  ip address MY ISP 2
ip nat outside
ip virtual-reassembly
!
interface Dialer1
mtu 1492
ip address negotiated
ip nat outside
ip virtual-reassembly
encapsulation ppp
dialer pool 1
ppp authentication pap callin
ppp pap sent-username password 0
!
ip forward-protocol nd
ip route 0.0.0.0 0.0.0.0 Dialer1 20 track 123
ip route 0.0.0.0 0.0.0.0  ISP 2 GW 20 track 124
!
!
ip http server
ip http access-class 23
ip http authentication local
no ip http secure-server
ip http timeout-policy idle 60 life 86400 requests 10000
ip nat pool Pool2  ISP 2 GW ISP 2 GW netmask
ip nat inside source route-map ISP 1 interface Dialer1 overload
ip nat inside source route-map ISP 2 pool pool2 overload
!
access-list 1 permit 192.168.1.0 0.0.0.255
access-list 10 permit 192.168.1.96
access-list 10 permit 192.168.1.97
dialer-list 1 protocol ip permit
!
route-map tracking permit 10
set ip next-hop verify-availability ISP 2 GW 10 track 124
set interface Dialer1
!
route-map tracking permit 20
set ip next-hop verify-availability ISP 1 GW 10 track 123
set ip next-hop ISP 2 GW
!
route-map test permit 10
match ip address 10
set ip next-hop ISP 2 GW
!
route-map test permit 20
match ip address 1
set interface Dialer1
!
route-map ISP 1 permit 10
match ip address 1
match interface Dialer1
!
route-map ISP 2 permit 10
match ip address 1
match interface Vlan30
!


Буду очень благодарен за помощ...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "Cisco 1841 - 2 NAT'а"  
Сообщение от zxc (??) on 28-Апр-09, 12:31 

>ip route 0.0.0.0 0.0.0.0 Dialer1 20 track 123
>ip route 0.0.0.0 0.0.0.0  ISP 2 GW 20 track 124
>!

Ваша проблема в этих строчках. Дефолт у вас в определенный момент времени всегда один.
Можете убедиться, посмотрев свой вывод команды
sh ip route


Решение номер 1 (простое, не совсем красивое, но работать будет)
убрать из маршрутов track и оставить так:

ip route 0.0.0.0 0.0.0.0 Dialer1
ip route 0.0.0.0 0.0.0.0  ISP 2 GW

Решение номер 2 (правильное, элегантное, полноценное)
использовать VRF
То есть, на каждого провайдера своя таблица маршрутизации (дефолт).

Если не использовать VRF, а доводить до ума решение номер 1, то нужно использовать track не в дефолтах, а в route-map
Например,
set ip next-hop verify-availability 1.1.1.1 1 track 123

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "Cisco 1841 - 2 NAT'а"  
Сообщение от zxc (??) on 28-Апр-09, 12:34 
Кстати, вы почти были у цели, если пытались использовать
route-map tracking

Только вот в нем лишние строки, да и неактивен он.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "Cisco 1841 - 2 NAT'а"  
Сообщение от wertys on 28-Апр-09, 12:41 
>Кстати, вы почти были у цели, если пытались использовать
>route-map tracking
>
>Только вот в нем лишние строки, да и неактивен он.

А где ошибка  в   route-map tracking, если не сложно ткните носом....


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

11. "Cisco 1841 - 2 NAT'а"  
Сообщение от wertys on 28-Апр-09, 12:43 
>>Кстати, вы почти были у цели, если пытались использовать
>>route-map tracking
>>
>>Только вот в нем лишние строки, да и неактивен он.
>
>А где ошибка  в   route-map tracking, если не сложно
>ткните носом....

По поводу VRF да согласен это всегда лучше и красивее, но как здесь его использовать я если чесно не совсем понимаю

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

13. "Cisco 1841 - 2 NAT'а"  
Сообщение от zxc (??) on 28-Апр-09, 13:30 
Пример, как это у меня работает.
Оборудование -- cisco871
Канал 1 -- ADSL, PPPoE (динамическая адресация)
Канал 2 -- FastEthernet (сеть /30 от провайдера)

Второй канал приоритетный, дешевый, быстрый и надежный. При отсутствии трансляции через приоритетный канал, сразу же начинает работать ADSL.
Недостаток этого конфига -- DNS. В случае работы резервного канала имена могут разрешаться с 5-сек. задержкой (из-за последовательной отработки маршрутизатором DNS серверов по списку). Но от этого можно избавиться, если использовать отдельностоящий в локальной сети DNS сервер.

Данное решение (VRF+динамическая маршрутизация) предложил уважаемый ВОЛКА на certification.ru

Вырезка конфига:
!
!
ip dhcp excluded-address 192.168.1.1
!
ip dhcp pool LAN
   network 192.168.1.0 255.255.255.0
   default-router 192.168.1.1
   dns-server 192.168.1.1
!
!
ip cef
ip domain name yourdomain.com
ip name-server vrf DSV 212.122.1.9
ip name-server vrf DSV 212.122.1.2
ip name-server vrf ROSTELECOM 208.67.222.222
ip name-server vrf ROSTELECOM 208.67.220.220
ip name-server 208.67.222.222
ip name-server 212.122.1.9
ip name-server 208.67.220.220
ip name-server 212.122.1.2
!
ip vrf DSV
description DSV
!
ip vrf ROSTELECOM
description ROSTELECOM
!
interface Loopback11
description VRF ROSTELEKOM, OSPF
ip address 192.168.0.1 255.255.255.255
!
interface Loopback12
description VRF ROSTELEKOM, OSPF
ip address 192.168.0.2 255.255.255.255
!
interface Loopback21
description VRF DSV, OSPF
ip address 192.168.0.3 255.255.255.255
!
interface Loopback22
description VRF DSV, OSPF
ip address 192.168.0.4 255.255.255.255

!
interface Tunnel11
description VRF ROSTELECOM, OSPF
ip address 192.168.0.9 255.255.255.252
tunnel source Loopback11
tunnel destination 192.168.0.2
!
interface Tunnel12
description VRF ROSTELECOM, OSPF
ip vrf forwarding ROSTELECOM
ip address 192.168.0.10 255.255.255.252
ip nat inside
ip virtual-reassembly
tunnel source Loopback12
tunnel destination 192.168.0.1
!
interface Tunnel21
description VRF DSV, OSPF
ip address 192.168.0.13 255.255.255.252
tunnel source Loopback21
tunnel destination 192.168.0.4
!
interface Tunnel22
description VRF DSV, OSPF
ip vrf forwarding DSV
ip address 192.168.0.14 255.255.255.252
ip nat inside
ip virtual-reassembly
tunnel source Loopback22
tunnel destination 192.168.0.3
!
!
interface FastEthernet0
spanning-tree portfast
!
interface FastEthernet1
spanning-tree portfast
!
interface FastEthernet2
spanning-tree portfast
!
interface FastEthernet3
description ROSTELECOM
switchport access vlan 2
ip vrf forwarding ROSTELECOM
spanning-tree portfast
!
interface FastEthernet4
description DSV PPPoE
ip vrf forwarding DSV
no ip address
no ip proxy-arp
duplex auto
speed auto
pppoe-client dial-pool-number 1
!
interface Vlan1
description LAN
ip address 192.168.1.1 255.255.255.0
ip accounting output-packets
ip mtu 1468
ip tcp adjust-mss 1428
!
interface Vlan2
description ROSTELECOM
ip vrf forwarding ROSTELECOM
ip address yy.yy.yy.xx 255.255.255.252
ip nat outside
ip nat enable
ip virtual-reassembly
!
interface Dialer0
ip vrf forwarding DSV
ip address negotiated
no ip proxy-arp
ip accounting output-packets
ip mtu 1492
ip nat outside
ip nat enable
no ip virtual-reassembly
encapsulation ppp
dialer pool 1
dialer idle-timeout 0
dialer-group 1
no cdp enable
ppp authentication chap callin
ppp chap hostname pppoe-xxxxxxx
ppp chap password 0 xxxxxxxxxxx
!
router ospf 1 vrf ROSTELECOM
log-adjacency-changes
passive-interface default
no passive-interface Tunnel12
network 192.168.0.8 0.0.0.3 area 0
default-information originate metric 110 metric-type 1
!
router ospf 2 vrf DSV
log-adjacency-changes
passive-interface default
no passive-interface Tunnel22
network 192.168.0.12 0.0.0.3 area 0
default-information originate
!
router ospf 10
log-adjacency-changes
passive-interface default
no passive-interface Tunnel11
no passive-interface Tunnel21
network 192.168.0.8 0.0.0.3 area 0
network 192.168.0.12 0.0.0.3 area 0
network 192.168.1.0 0.0.0.255 area 0
!
ip route vrf DSV 0.0.0.0 0.0.0.0 Dialer0 50
ip route vrf ROSTELECOM 0.0.0.0 0.0.0.0 yy.yy.yy.yyy 40
no ip http server
!
ip dns server
ip nat translation tcp-timeout 240
ip nat translation udp-timeout 60
ip nat inside source list NAT interface Dialer0 vrf DSV overload
ip nat inside source list NAT interface Vlan2 vrf ROSTELECOM overload
!
ip access-list extended NAT
deny   ip 192.168.1.0 0.0.0.255 192.168.0.0 0.0.255.255
permit ip 192.168.1.0 0.0.0.255 any
permit ip 192.168.0.0 0.0.0.255 any
!
no cdp run
!

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

14. "Cisco 1841 - 2 NAT'а"  
Сообщение от wertys on 28-Апр-09, 13:41 
>[оверквотинг удален]
>ip nat inside source list NAT interface Dialer0 vrf DSV overload
>ip nat inside source list NAT interface Vlan2 vrf ROSTELECOM overload
>!
>ip access-list extended NAT
> deny   ip 192.168.1.0 0.0.0.255 192.168.0.0 0.0.255.255
> permit ip 192.168.1.0 0.0.0.255 any
> permit ip 192.168.0.0 0.0.0.255 any
>!
>no cdp run
>!

Ну у вас ситуация соовсем другая, Вы как я понимаю берете VPN-ы на удаленный филал с которым и строите ospf и признаком того что канал упал являются маршруты ospf, у меня же ситуация совсем другая  

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

15. "Cisco 1841 - 2 NAT'а"  
Сообщение от zxc (??) on 28-Апр-09, 14:04 
>Ну у вас ситуация соовсем другая, Вы как я понимаю берете VPN-ы
>на удаленный филал с которым и строите ospf и признаком того
>что канал упал являются маршруты ospf, у меня же ситуация совсем
>другая

Вы невнимательно смотрели конфиг. Никаких филиалов у меня нет, и уж тем более VPN-ов.
Эти туннели начинаются и заканчиваются на одном и том же маршрутизаторе.

Ситуацию я описал в начале. Два канала в интернет. Один приоритетный, другой -- бэкап.
Можете смело переносить мой конфиг к себе, только интерфейсы измените на свои и адресацию под себя настройте.
Ну, и возможно, немного для себя NAT поднастроите (для 20 адресов исключения).

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

16. "Cisco 1841 - 2 NAT'а"  
Сообщение от wertys on 28-Апр-09, 15:17 
>[оверквотинг удален]
>Вы невнимательно смотрели конфиг. Никаких филиалов у меня нет, и уж тем
>более VPN-ов.
>Эти туннели начинаются и заканчиваются на одном и том же маршрутизаторе.
>
>Ситуацию я описал в начале. Два канала в интернет. Один приоритетный, другой
>-- бэкап.
>Можете смело переносить мой конфиг к себе, только интерфейсы измените на свои
>и адресацию под себя настройте.
>Ну, и возможно, немного для себя NAT поднастроите (для 20 адресов исключения).
>

Большое спасибо за помощь, увидел ошибался извеняюсь, но все таки кто нибудь схему с ip sla может подсказать что не правильно?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

17. "Cisco 1841 - 2 NAT'а"  
Сообщение от zxc (??) on 28-Апр-09, 16:04 
>но все таки кто нибудь
>схему с ip sla может подсказать что не правильно?

повторюсь:
вам надо или убрать track из дефолтовых маршрутов
написать правильный route-map


1. Уберите отсюда track 123 и track 124 и два NAT заработают сразу же.
Каналы будут делиться 50% на 50%

ip route 0.0.0.0 0.0.0.0 Dialer1 20 track 123
ip route 0.0.0.0 0.0.0.0  ISP 2 GW 20 track 124

2. Если просто нужно использовать основной + резервный канал с помощью sla, то
сделайте так:
route-map NAT permit 10
match ip address NAT
set ip next-hop verify-availability xxx.xxx.xxx.xxx 10 track 123
set ip next-hop verify-availability yyy.yyy.yyy.yyy 20 track 124


3. Если надо для определенной группы из 20 адресов пользовать неосновной канал, а для остальных -- основной, то route-map надо немного изменить:

route-map NAT permit 10
match ip address NAT-20IP
set ip next-hop verify-availability yyy.yyy.yyy.yyy 10 track 124
set ip next-hop verify-availability xxx.xxx.xxx.xxx 20 track 123

route-map NAT permit 20
match ip address NAT-ALL
set ip next-hop verify-availability xxx.xxx.xxx.xxx 10 track 123
set ip next-hop verify-availability yyy.yyy.yyy.yyy 20 track 124


Ну, а вообще, ваша задача решалась
http://www.certification.ru/cgi-bin/forum.cgi?action=thread&...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

19. "Cisco 1841 - 2 NAT'а"  
Сообщение от wertys on 28-Апр-09, 18:33 
>[оверквотинг удален]
> set ip next-hop verify-availability xxx.xxx.xxx.xxx 20 track 123
>
>route-map NAT permit 20
> match ip address NAT-ALL
> set ip next-hop verify-availability xxx.xxx.xxx.xxx 10 track 123
> set ip next-hop verify-availability yyy.yyy.yyy.yyy 20 track 124
>
>
>Ну, а вообще, ваша задача решалась
>http://www.certification.ru/cgi-bin/forum.cgi?action=thread&...

Увидел такую проблему, при таком раскладе  
ip route 0.0.0.0 0.0.0.0 Dialer1
ip route 0.0.0.0 0.0.0.0  ISP 2 GW

ping 213.180.204.8 source di1
Success rate is 100 percent (5/5), round-trip min/avg/max = 44/46/48 m

ping 213.180.204.8 source ISP 2 MY
Success rate is 0 percent (0/5)


Если игратся с метриками

ip route 0.0.0.0 0.0.0.0 Dialer1 100
ip route 0.0.0.0 0.0.0.0  ISP 2 GW 50

то пинги проходят и с того и с того сорса

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

20. "Cisco 1841 - 2 NAT'а"  
Сообщение от alex.krav (??) on 29-Апр-09, 08:19 
>[оверквотинг удален]
>Success rate is 0 percent (0/5)
>
>
>Если игратся с метриками
>
>ip route 0.0.0.0 0.0.0.0 Dialer1 100
>ip route 0.0.0.0 0.0.0.0  ISP 2 GW 50
>
>то пинги проходят и с того и с того сорса
>

Это ни о чём не говорит. Скорее всего какой-то из провайдеров не принимает пакеты из чужих сеток.
Здесь Вам хорошо расписали разные варианты решения вопроса. Чтобы не было вышеозначенных проблем (при использовании PBR) добавьте соответствующие строки:

route-map ISP permit 10
match ip address ISP_1_source_IP
set ip default next-hop ISP_1_GW
route-map ISP permit 20
match ip address ISP_2_source_IP
set ip default next-hop ISP_2_GW
...затем правила для приватных сеток

Перед проверкой ping 213.180.204.8 ...
ip local policy route-map ISP


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

21. "Cisco 1841 - 2 NAT'а"  
Сообщение от wertys on 29-Апр-09, 10:33 
>[оверквотинг удален]
>route-map ISP permit 10
> match ip address ISP_1_source_IP
> set ip default next-hop ISP_1_GW
>route-map ISP permit 20
> match ip address ISP_2_source_IP
> set ip default next-hop ISP_2_GW
>...затем правила для приватных сеток
>
>Перед проверкой ping 213.180.204.8 ...
>ip local policy route-map ISP

zxc и alex.krav огромное спасибо Вам за помощ !!!!!!!!!!

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

18. "Cisco 1841 - 2 NAT'а"  
Сообщение от zxc (??) on 28-Апр-09, 16:10 
Да, и напоследок: лучше отказывайтесь от ip sla

:-)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

12. "Cisco 1841 - 2 NAT'а"  
Сообщение от zxc (??) on 28-Апр-09, 13:07 
в route-map правильней использовать
один match
один set


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Спонсоры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2022 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру