Здравствуйте ! Не совсем понимаю как указать source ip для пакетов отправляющихся к определенному внешнему ip адресу или сети …Ниже кусок рабочей конфигурации Cisco 1841.
В нее добавлена только новая строка для внешнего интерфейса:
ip address 192.168.15.1 255.255.255.0 secondaryГде то в сети со стороны внешнего интерфейса присутствует отдельная никак не связанная с другими сетка провайдера 192.168.15.х, для простоты пока тестируем один хост 192.168.15.2
Собственно проблема в том что:
ping 192.168.15.2 с самой Cisco не идет :(
При этом ping ip 192.168.15.2 sou 192.168.15.1 работает замечательно
С обратной стороны с хоста 192.168.15.2 пинг на меня по 192.168.15.1 тоже работает без проблем.
Очевидно что при просто ping 192.168.15.2 у пакетов в качестве source ip подставляется первичный адрес внешнего интерфейса 10.254.224.1, вместо нужного 192.168.15.1.Я что то не пойму как указать что все пакеты для которых destination лежит в подсети 192.168.15.х должны отправляться с указанием source ip 192.168.15.1 ? Вроде это автоматом же должно делаться или нет ?
Читал тут про 2 провайдера , балансировку, local policy route map и т.п., но честно говоря мало чего понял. Не бейте сильно, я не очень уж в Cisco смыслю, но может кто нибудь кусок конфига написать, как проще всего эту задачу решить ?!
interface Loopback1
ip address 10.224.0.253 255.255.255.255
!
interface Loopback2
ip address 10.244.20.253 255.255.255.255
!
interface FastEthernet0/0
description ToBigCompanyLAN
ip address 192.168.15.1 255.255.255.0 secondary
ip address 10.254.224.1 255.255.255.252
no ip redirects
ip nat outside
ip virtual-reassembly
duplex auto
speed auto
!
interface FastEthernet0/1
description ToOurCompanyLAN
ip address 10.244.20.1 255.255.255.128 secondary
ip address 10.224.0.1 255.255.255.128 secondary
ip address 192.168.40.4 255.255.255.0 secondary
ip address 192.168.49.4 255.255.255.0 secondary
ip address 192.168.50.4 255.255.255.0
ip nat inside
ip virtual-reassembly
duplex auto
speed auto
!
ip classless
ip route 0.0.0.0 0.0.0.0 192.168.50.6
ip route 10.0.0.0 255.0.0.0 10.254.224.2
ip route 130.0.13.7 255.255.255.255 10.254.224.2
ip route 172.16.1.75 255.255.255.255 192.168.50.21
ip route 172.16.1.76 255.255.255.255 192.168.50.21
ip route 172.16.1.250 255.255.255.255 10.254.224.2
ip route 172.16.2.0 255.255.255.0 10.254.224.2
ip route 172.17.21.1 255.255.255.255 192.168.50.21
ip route 172.17.21.50 255.255.255.255 192.168.50.21
ip route 172.17.21.51 255.255.255.255 192.168.50.21
ip route 172.17.31.2 255.255.255.255 192.168.50.21
ip route 172.17.31.3 255.255.255.255 192.168.50.21
ip route 192.168.60.0 255.255.255.0 192.168.50.21
ip route 192.168.200.0 255.255.255.0 192.168.50.23
!
ip http server
ip http authentication local
ip http secure-server
ip http timeout-policy idle 600 life 86400 requests 10000
ip nat inside source list O1 interface Loopback1 overload
ip nat inside source list O2 interface Loopback2 overload
!
ip access-list extended O1
permit ip 192.168.50.0 0.0.0.255 10.0.0.0 0.255.255.255
ip access-list extended O2
permit ip 192.168.50.0 0.0.0.255 172.16.0.0 0.0.255.255
>[оверквотинг удален]
> ip http authentication local
> ip http secure-server
> ip http timeout-policy idle 600 life 86400 requests 10000
> ip nat inside source list O1 interface Loopback1 overload
> ip nat inside source list O2 interface Loopback2 overload
> !
> ip access-list extended O1
> permit ip 192.168.50.0 0.0.0.255 10.0.0.0 0.255.255.255
> ip access-list extended O2
> permit ip 192.168.50.0 0.0.0.255 172.16.0.0 0.0.255.255Да тут все просто. Когда отправляете ping 192.168.15.2, в качестве источника будет стоять
10.254.224.1. Другая сторона, приняв пакет, пытается ответить. Для этого роутер смотрит в свой RIBе (show ip rout), и не находит сеть адресата. Чтобы исправить ситуацию, добавьте:ip route 10.254.224.0 255.255.255.252 192.168.15.1
Только добавить это на стороне провайдера надо. А также добавить маршрут во все сети пользователя из которых нужно ходить в 15.х , а если провайдер на это не пойдет можно подменять source через nat.
Как то так:ip access-list ext NAMEACL
perm ip host HOSTADRESS any /те хосты которые должны ходить в 15ю сетьroute-map ROUTEMAPNAME perm 1
match ip address NAMEACLip nat pool NAMEPOOL 192.168.15.1 netmask 255.255.255.0
ip nat inside source route-map ROUTEMAPNAME pool NAMEPOOL overload
> Да тут все просто. Когда отправляете ping 192.168.15.2, в качестве источника будет
> стоять
> 10.254.224.1. Другая сторона, приняв пакет, пытается ответить. Для этого роутер смотрит
> в свой RIBе (show ip rout), и не находит сеть адресата.
> Чтобы исправить ситуацию, добавьте:
> ip route 10.254.224.0 255.255.255.252 192.168.15.1Спасибо. Помогло, но возникла следующая проблема:
За cisco 192.168.15.2 стоит еще один маршрутизатор (тоже Cisco) 10.0.16.1
Внутри 192.168.15.2 и 10.0.16.1 прописали маршруты к 10.254.224.0, 192.168.15.0 и к 192.168.50.хТеперь имеем из-нутри моей Cisco:
ping ip 10.0.16.1 sou 192.168.15.1 - работает
ping ip 10.0.16.1 sou 10.254.224.1 - работает
ping ip 192.168.15.2 sou 192.168.50.4 - работаетА вот:
ping ip 10.0.16.1 sou 192.168.50.4 - не работает хоть ты тресни..C trace ip тоже самое…
Ну и соответственно из сети 192.168.50.х ping на 192.168.15.2 проходит, а на 10.0.16.1 нет...
Куски конфигов:
С 10.0.16.1:
ip route 10.254.224.0 255.255.255.252 10.0.16.50
ip route 192.168.15.0 255.255.255.0 10.0.16.50
ip route 192.168.50.0 255.255.255.0 10.0.16.50Со 192.168.15.2, он же 10.0.16.50
ip route 0.0.0.0 0.0.0.0 10.0.16.1
ip route 10.254.224.0 255.255.255.252 192.168.15.1
ip route 192.168.50.0 255.255.255.0 192.168.15.1В чем тут может быть собака зарыта ?
Так а трассировка до куда доходит?
> Так а трассировка до куда доходит?Да собственно на моем маршрутизаторе (который 192.168.50.4 (он же 10.254.224.1 и 192.168.15.1) и умирает ...
Вот tracert с компа из сети 192.168.50.х:На 192.168.15.2 проходит без проблем:
tracert 192.168.15.2
Трассировка маршрута к 192.168.15.2 с максимальным числом прыжков 301 <1 мс <1 мс <1 мс 192.168.50.4
2 3 ms 3 ms 3 ms 192.168.15.2
Трассировка завершена.А на 10.0.16.1 уже нет:
tracert 10.0.16.1
Трассировка маршрута к 10.0.16.1 с максимальным числом прыжков 30
1 <1 мс <1 мс <1 мс 192.168.50.4
2 * * * Превышен интервал ожидания для запроса.
3 * * * Превышен интервал ожидания для запроса.
4 * * * Превышен интервал ожидания для запроса.
5 * * * Превышен интервал ожидания для запроса.
ну и до бесконечности так...При этом с самого маршрутизатора 192.168.50.4 без проблем:
router#trace 10.0.16.1Type escape sequence to abort.
Tracing the route to 10.0.16.11 192.168.15.2 4 msec 4 msec 4 msec
2 10.0.16.1 4 msec * 4 msec
router#
Но правда только почему то при ответе от 10.0.16.1 всегда присуствует * между двумя ответами по 4msec
Сначала думал случайность, но нет, попробовал много раз - ответ всегда такой же как выше...