Здравствуйте.
Есть ситуация, которая не дает мне покоя и которая, возможно, знакома не
только мне.
Даны: Cisco-3620 (12.2(13)) и FreeBSD-4.7-p7 с squid-2.5-STABLE2. Между
кошкой и сквидом ходит WCCPv1. Фри и кошка соединены через свич Cajun
P133, при этом кошка распутывает dot1q, а фри живет в одном из vlan'ов.
Проблема заключается в том, что пользователь не может работать с сайтами
Yahoo-Mail, Hotmail, LiveJournal и другими нужными штуками.
При ближайшем рассмотрении выяснилось, что проблема возникает на тех
запросах, которые не умещаются в один пакет. Например, когда
пользователь посылает длинную-длинную куку. Или письмо.
19:23:33.543336 10.44.107.241.1261 > 66.218.78.79.80: S [tcp sum ok] 2831730461:2831730461(0) win 64240
ууу, когда такая в точности бага была в IOS'е и мы по ней топтались просто ужасающе :-( Кажется ее полечили с 12.0(7)T, но может опять поломали? Поищи в Bug Navigator по слову WCCP. Vladimir Melnik wrote:
Здравствуйте.
Есть ситуация, которая не дает мне покоя и которая, возможно, знакома не только мне.
Даны: Cisco-3620 (12.2(13)) и FreeBSD-4.7-p7 с squid-2.5-STABLE2. Между кошкой и сквидом ходит WCCPv1. Фри и кошка соединены через свич Cajun P133, при этом кошка распутывает dot1q, а фри живет в одном из vlan'ов.
Проблема заключается в том, что пользователь не может работать с сайтами Yahoo-Mail, Hotmail, LiveJournal и другими нужными штуками.
При ближайшем рассмотрении выяснилось, что проблема возникает на тех запросах, которые не умещаются в один пакет. Например, когда пользователь посылает длинную-длинную куку. Или письмо.
19:23:33.543336 10.44.107.241.1261 > 66.218.78.79.80: S [tcp sum ok] 2831730461:2831730461(0) win 64240
(DF) (ttl 128, id 7037, len 48) ^^^ Я посылаю запрос на соединение. 19:23:33.561416 66.218.78.79.80 > 10.44.107.241.1261: S [tcp sum ok] 1580579108:1580579108(0) ack 2831730462 win 57344 (DF) (ttl 61, id 18684, len 44) ^^^ Вот этот пакет присылает мне сквид от имени яхи. 19:23:33.561744 10.44.107.241.1261 > 66.218.78.79.80: . [tcp sum ok] ack 1 win 64240 (DF) (ttl 128, id 7039, len 40) 19:23:33.563352 10.44.107.241.1261 > 66.218.78.79.80: . 1:1461(1460) ack 1 win 64240 (DF) (ttl 128, id 7040, len 1500) 19:23:33.563666 10.44.107.241.1261 > 66.218.78.79.80: P 1461:1874(413) ack 1 win 64240 (DF) (ttl 128, id 7041, len 453) ^^^ Посылаю текст с запросом GET и длинной кукой, разбитый на два ^^^ пакета. 19:23:33.636676 66.218.78.79.80 > 10.44.107.241.1261: . [tcp sum ok] ack 1 win 58400 (DF) (ttl 61, id 18693, len 40) ^^^ Вот тут не могу понять, если честно, хотя чувствую, что это важно. ^^^ Это подтверждение приема первой части моего сообщения или второй ^^^ части? Не могу посмотреть, КАКАЯ из частей приходит на сквид, потому ^^^ что tcpdump показывает мне только GRE-пакеты от кошки, ЧТО в них, я ^^^ не могу посмотреть. 19:23:36.483306 10.44.107.241.1261 > 66.218.78.79.80: . 1:1461(1460) ack 1 win 64240 (DF) (ttl 128, id 7068, len 1500) ^^^ Судя по всему, подтвержден был второй пакет, а первый пакет я ^^^ посылаю снова... 19:23:42.504846 10.44.107.241.1261 > 66.218.78.79.80: . 1:1461(1460) ack 1 win 64240 (DF) (ttl 128, id 7112, len 1500) ^^^ ...и снова... 19:23:54.448606 10.44.107.241.1261 > 66.218.78.79.80: . 1:1461(1460) ack 1 win 64240 (DF) (ttl 128, id 7214, len 1500) ^^^ ...и снова. В логах сквида - никаких упоминаний о моем запросе. Сам сквид к 66.218.78.79:80 тоже не спешит обращаться. Стало быть, он не получает этот запрос, а получает какие-то его обломки.
Пожалуйста, подскажите мне, почему ТАК. Если не трудно, поправьте в случае, если я сделал где-то ошибку в выводах, разглядывая дамп.
Сквид ставил 2.4-STABLE7, ничего не дало; дело, стало быть, не в сквиде.
Если выключаю WCCP на кошке или же говорю бровзеру, что ходить надо через прокси - все работает аж бегом.
Вместо WCCP включал обычный редирект в прокси. И вот при этом все тоже очень хорошо работает, хотя GET-запрос и бьется на два пакета; оба пакета аккуратно попадают по месту назначения и нормально обрабатываются сквидом.
Заранее благодарен всем отозвашимся.
-- :r !ripewhois DOKA-RIPE ------------------------------------------------------------------------- Never try to teach a pig to sing. It wastes your time and annoys the pig. -- Lazarus Long, "Time Enough for Love" =================================================================== uanog mailing list. To Unsubscribe: send mail to majordomo@uanog.kiev.ua with "unsubscribe uanog" in the body of the message
On Mon, Mar 24, 2003 at 08:45:20PM +0200, Vladimir Litovka wrote:
ууу, когда такая в точности бага была в IOS'е и мы по ней топтались просто ужасающе :-( Кажется ее полечили с 12.0(7)T, но может опять поломали? Поищи в Bug Navigator по слову WCCP.
Я прошу прощения за то, что написал такое большое письмо из-за такой дурацкой проблемы; правда, в принципе, глюк был не только на моей совести, но и на совести тех-самых-индусов. Дело в том, что, когда gre-пакет для сквида не нужно фрагментировать, кошка отправляет его с адреса старшего интерфейса (не знаю, зачем это понадобилось так делать), в соответствии с этим я на кошке и строил фаерволл для серверной группы. Кто же тогда знал, что, если gre-пакет оказывается слишком толстым и подлежит фрагментации, кошка будет отправлять его с адреса того интерфейса, который "ближе" всего к сквиду? Бредово так... :( -- V.Melnik =================================================================== uanog mailing list. To Unsubscribe: send mail to majordomo@uanog.kiev.ua with "unsubscribe uanog" in the body of the message
participants (2)
-
Vladimir Litovka
-
Vladimir Melnik