Re: ipsec & tcp connection stalled

From
Auster (2:5020/400)
To
Eugene Grosbein (2:5054/37.63)
Date
2006-09-08T17:33:06Z
Area
RU.UNIX.BSD
From: Auster <lrou@x.ua>

Eugene Grosbein <Eugene.Grosbein@f1.n5006.z2.fidonet.org> wrote:
 
> Опять возвращаюсь к этой проблеме.
> Есть две инсталляции FreeBSD, одна 4.11, вторая
> 6.1-STABLE (обновлена сегодня) в одном сегменте, с реальными
> адресами на ethernet-интерфейсах в этом сегменте.
> 
> Между этими адресами поднят IPSEC (ESP only) на статических ключах.
> Все правила spdadd имеют вид esp/transport/IP1-IP2/require.
> 
> У каждой машины есть второй интерфейс, на котором у каждого своя
> локалке - по одному сегменту на (разных) серых адресах, включен форвардинг.
> Между роутерами поднят gif-туннель и выстроена статическая маршрутизатиция,
> в результате чего IP-пакеты через роутеры свободно ходят из одной локалки
> в другую, при этом трафик через межроутерный сегмент идет в шифрованном
> виде.
> 
> Mtu на физических ethernet-интерфейсах равен 1500 на обоих роутерах.
> Транзитные TCP-сессии между машинами разных локалок ходят
> без малейших проблем. TCP-сессии между реальными IP-адресами роутеров
> затыкаются при возникновении крупных пакетов, например:
> каждый из роутеров является SMTP-релеем и прописан в качестве MX
> каждый для своего домена. Почта от одного из релеев к другому не ходит,
> TCP-коннекты отваливаются по таймауту. Этот трафик, замечу, идет
> не внутри gif-туннеля. 
> 
> ICMP не фильтруется, pf вообще не используется, используется ipfw2.
> Заколебала проблема сильно.
> 
> Вопросы:
> 
> 1. Как заставить tcpdump декодировать IPSEC-трафик, прошу работающий
> пример строки запуска tcpdump.

  % racoonctl ss esp
  A.B.C.D E.F.G.K
	esp mode=transport spi=dadadada(0xAAAAAAAA) reqid=0(0x00000000)
	E: 3des-cbc <KEY1>
  ...
  E.F.G.K A.B.C.D
	esp mode=transport spi=adadadad(0xDDDDDDDD) reqid=0(0x00000000)
	E: 3des-cbc <KEY2>
  ...


  // убирая с KEY1 и KEY2 пробелы - вписываешь в файлик keys.txt:
  0xAAAAAAA@E.F.G.K 3des-cbc-hmac96:0xKEY1
  0xDDDDDDD@A.B.C.D 3des-cbc-hmac96:0xKEY2


  // затем смотришь на интерфейсе
  % tcpdump -i iface -s0 -E 'file keys.txt' 'esp && ...'
  // или с сохраненного pcap'а



> 2. Если есть информация - из-за чего такое происходит?
>
  :) информации как раз такой и нет, но есть примерно такойже esp/transport//require
  на одном eth сегменте но с отсутствием подобных проблем. (единственно в чем
  отличие - транспорт покриптован между fbsd61 и nbsd, нет туннелей, и нет файрволов).


-- 
Auster Vl.
--- ifmail v.2.15dev5.3
 * Origin: Demos online service (2:5020/400)
SEEN-BY: 50/12 203 400/814 450/159 186 1024 451/30 461/43 132 640 469/999
SEEN-BY: 550/196 4616/3 4625/8 4635/4 4641/444 5000/76 5000 5006/1 5007/1
SEEN-BY: 5010/70 352 5011/13 5012/46 5015/28 5019/31 5020/18 154 175 194 400
SEEN-BY: 5020/545 549 715 758 982 1057 1523 1604 1630 1909 1922 2142 2238 2395
SEEN-BY: 5020/2450 2590 2871 4441 5021/3 29 5022/128 5025/3 750 5026/45
SEEN-BY: 5027/12 5029/32 5030/49 500 556 966 1063 1080 1900 1957 2828 5031/47
SEEN-BY: 5031/70 5034/10 13 5035/3 38 5036/1 5040/47 5042/13 5045/7 5049/1 50
SEEN-BY: 5049/97 5051/15 5054/1 4 8 9 11 28 35 36 37 45 63 66 67 70 75 84 85
SEEN-BY: 5055/95 5057/1 5059/9 5060/88 5061/15 5062/1 10 5063/3 5064/7 5066/18
SEEN-BY: 5074/9 5075/5 5077/70 5080/80 1003 5082/6 5083/21 5085/13 5090/108
SEEN-BY: 5094/4 5095/20 5096/18 5099/11 6001/3 10
PATH: 5020/400 4441 545 5054/1 37