Дано:
Есть клиент, есть Squid, есть CISCO 2811(Router)
Условия:
Если клиент выходит в инет через порты отличные от 80, то пакеты с IP 10.77.xx.xx через киску по NAT попадают в инет.
Если клиент идет на 80 порт, то через WCCP заворачивается на Squid и Squid от IP 10.78.xx.xx через киску идет в инет. При этом, если у клиента IP к примеру 10.77.0.8 то Squid обращается к киске от IP 10.78.0.8
Задача:
Нужно чтоб на внешке с роутера пакеты с IP 10.77.0.8 и 10.78.0.8 был IP 172.0.0.8 соотв. с IP 10.77.0.9 и 10.78.0.9 был 172.0.0.9 и т.д.Команда ip nat inside source static 10.77.0.8 172.0.0.8 работает, но вот на команду ip nat inside source static 10.78.0.8 172.0.0.8 уже ругается говорит что 172.0.0.8 уже занят 10.77.0.8
Помогите кто знает как решить данную задачу?
При этос надо прокинуть пакеты в обратку на 10.77.0.8 (Кароч. у клиента выделенный IP адрес, нужно и его (клиента) и сквид от имени этого IP пускать в инет)
Ребят коли никто не смог мну помочь советом али ответом, значит ни укого мыслей нет как это сделать. Ну я ужо решил проблему...
Ибо ни у кого небыло подобного мозгосноса, я выкладываю мое решение проблемы:Клиент 10.77.0.2, его внешний IP: 192.168.10.100
----------CISCO-2811----------
ip nat pool 1305 192.168.10.100 192.168.10.100 netmask 255.255.255.0
ip nat inside source list 1305 pool 1305 overload
access-list 1305 permit 10.77.0.2
access-list 1305 permit 10.78.0.2
ip nat inside source static 10.77.0.2 192.168.10.100 (Дабы свнешки пакеты попадали на клиента)
------------Squid-------------
acl 209 10.77.0.2
tcp_outgoing_address 10.78.0.2 209
-----------FreeBSD------------
ifconfig re0 inet 10.78.0.2 255.255.255.0 alias
------------------------------
(На мой взгляд немного кривовато, но почемуто заработало именно так, иначе не хотело)
Если будут мысли как это можно реализовать покрасивше, я выслушаю любое мнение...
>[оверквотинг удален]
>------------Squid-------------
>acl 209 10.77.0.2
>tcp_outgoing_address 10.78.0.2 209
>-----------FreeBSD------------
>ifconfig re0 inet 10.78.0.2 255.255.255.0 alias
>------------------------------
>(На мой взгляд немного кривовато, но почемуто заработало именно так, иначе не
>хотело)
>Если будут мысли как это можно реализовать покрасивше, я выслушаю любое мнение...
>ты хотел чтоб клиент которому ты выделил "белый" адрес выходил именно с него в инет?
а не проще было не натить его в этот адрес с "серого", а сразу поставить ему белый?
>ты хотел чтоб клиент которому ты выделил "белый" адрес выходил именно с
>него в инет?
>а не проще было не натить его в этот адрес с "серого",
>а сразу поставить ему белый?Возможно и проще, а как я буду заварачивать его http запросы на squid ?
Сквиду то я не смогу дать белый IP, а он в инет должен тоже попадать от имени белого IP, причем для каждого клиента свой!!!
>>ты хотел чтоб клиент которому ты выделил "белый" адрес выходил именно с
>>него в инет?
>>а не проще было не натить его в этот адрес с "серого",
>>а сразу поставить ему белый?
>
>Возможно и проще, а как я буду заварачивать его http запросы на
>squid ?
>Сквиду то я не смогу дать белый IP, а он в инет
>должен тоже попадать от имени белого IP, причем для каждого клиента
>свой!!!мож я не понимаю чего, но обычно прокси имеет белый айпи. и если я правильно понял, то у тебя "прозрачный" прокси? я бы сделал нормальный прокси, с прописыванием в настройках компа. выход в инет с "серых" занатил бы. а с "белой" подсети разрешил прямой доступ. тогда те у кого "серый" перли бы в инет через проксю в соответствии с настройками, а не по http натились бы. белые же шли напрямую(если настройки не указали). если делать прозрачный прокси, то честно не знаю, думать надо.
interface FastEthernet0/0 // смотрит в сторону серых адресов.
ip address 172.16.1.2 255.255.255.252
ip policy route-map ROUTING_BY_PROTO
duplex auto
speed auto
ip access-list extended ACL
permit tcp 10.0.0.0 0.255.255.255 any eq www // все пакеты с серых адресов идущие по http
deny tcp any any
!
route-map ROUTING_BY_PROTO permit 10
match ip address ACL
set ip next-hop 172.16.3.2 // таким пакетам некст-хоп ставим твою проксип
Дело в том что прокся в инет неможет хидить с тогоже IP что и клиент, иначе роутер непоймет куда ответ с инета слать, да и сама прокся затупит, как так сам себе ответить ))). поэтому у squid-а отдельная подсеть адресов для исходящих соединений.Не важно как реализовать, самое главное, это у каждого клиента должен быть свой выделенный IP, и как входящие, так и исходящие соединения должны быть от имени данного IP(включая исходящие http запросы!!!).
>Дело в том что прокся в инет неможет хидить с тогоже IP
>что и клиент, иначе роутер непоймет куда ответ с инета слать,
>да и сама прокся затупит, как так сам себе ответить ))).
>поэтому у squid-а отдельная подсеть адресов для исходящих соединений.
>
>Не важно как реализовать, самое главное, это у каждого клиента должен быть
>свой выделенный IP, и как входящие, так и исходящие соединения должны
>быть от имени данного IP(включая исходящие http запросы!!!).че-то мне подсказывает, что так низя. прокси будет сама отправлять пакет с соурсом своим, а не клиента. ты скажи зачем те всё это надо, мож ты не то ищешь.
>че-то мне подсказывает, что так низя. прокси будет сама отправлять пакет с
>соурсом своим, а не клиента. ты скажи зачем те всё это
>надо, мож ты не то ищешь.Кстати возможно, что есть и иное решение моей задачи, и чтото мне подсказывает что оно будет даже правильнее.
Собстно задача сбор http заголовков, кто куда ходил, и скока это куда весило.
На кисках есть порт SPAN, который может видеть все пакеты пролетающие мимо CISCO, так вот уважаемы гуру, могу ли я его заюзать чтобы собирать нужную мне инфу, и что за зверь мне в этом может помочь?
>[оверквотинг удален]
>
>Кстати возможно, что есть и иное решение моей задачи, и чтото мне
>подсказывает что оно будет даже правильнее.
>
>Собстно задача сбор http заголовков, кто куда ходил, и скока это куда
>весило.
>На кисках есть порт SPAN, который может видеть все пакеты пролетающие мимо
>CISCO, так вот уважаемы гуру, могу ли я его заюзать чтобы
>собирать нужную мне инфу, и что за зверь мне в этом
>может помочь?помоему NetFlow для этого. но точно низнаю.