Вот выписка из /var/log/security
Oct 8 17:06:18 goethe /kernel: ipfw: 2900 Accept ICMP:11.0 146.188.65.37 10.1.1.251 in via fxp0
Oct 8 17:06:18 goethe /kernel: ipfw: 2900 Accept ICMP:11.0 146.188.65.37 10.1.1.251 out via xl0
fxp0 - внешний интерфейс с реальным адресом
xl0 - внутренний интерфейс с 10.1.1.254
Запущен natd на fxp0.
При пинге из внутренней сети во внешнюю сеть получили что выше.
Вопрос:
1. Как на внешний интерфейс попадают пакеты с адресом направления 10.0.0.X, при этом интерфейса cisco, обращенного в фаерволу таких пакетов не падает на fxp0..!!!!!!!!???
Как такие пакеты могут ийти из интернета in via fxp0.
>Вот выписка из /var/log/security
>Oct 8 17:06:18 goethe /kernel: ipfw: 2900 Accept ICMP:11.0 146.188.65.37 10.1.1.251
>in via fxp0
>Oct 8 17:06:18 goethe /kernel: ipfw: 2900 Accept ICMP:11.0 146.188.65.37 10.1.1.251
>out via xl0
>fxp0 - внешний интерфейс с реальным адресом
>xl0 - внутренний интерфейс с 10.1.1.254
>Запущен natd на fxp0.
>При пинге из внутренней сети во внешнюю сеть получили что выше.
>Вопрос:
>1. Как на внешний интерфейс попадают пакеты с адресом направления 10.0.0.X, при
>этом интерфейса cisco, обращенного в фаерволу таких пакетов не падает на
>fxp0..!!!!!!!!???
>Как такие пакеты могут ийти из интернета in via fxp0.
Надо смотреть каким правилом пакеты считаются...
А путь (поправте если ошибаюсь) ping-a такой:
xl0 in recive from 10.1.1.251 to out_addr
fxp0 in recive from 10.1.1.251 to out_addr - (до ната)
fxp0 out xmit from nat_addr to out_addr
ответ:
fxp0 in recive from out_addr to nat_addr - (до ната)
fxp0 out xmit from nat_addr to 10.1.1.251
xl0 out xmit from nat_addr to 10.1.1.251
просто надо проследить сколько раз пакет по пути в firewall бьется - MAN ipfw - там эта ситуация описана, если ошибаюсь
>>Вот выписка из /var/log/security
>>Oct 8 17:06:18 goethe /kernel: ipfw: 2900 Accept ICMP:11.0 146.188.65.37 10.1.1.251
>>in via fxp0
>>Oct 8 17:06:18 goethe /kernel: ipfw: 2900 Accept ICMP:11.0 146.188.65.37 10.1.1.251
>>out via xl0
>>fxp0 - внешний интерфейс с реальным адресом
>>xl0 - внутренний интерфейс с 10.1.1.254
>>Запущен natd на fxp0.
>>При пинге из внутренней сети во внешнюю сеть получили что выше.
>>Вопрос:
>>1. Как на внешний интерфейс попадают пакеты с адресом направления 10.0.0.X, при
>>этом интерфейса cisco, обращенного в фаерволу таких пакетов не падает на
>>fxp0..!!!!!!!!???
>>Как такие пакеты могут ийти из интернета in via fxp0.
>Надо смотреть каким правилом пакеты считаются...
>А путь (поправте если ошибаюсь) ping-a такой:
>xl0 in recive from 10.1.1.251 to out_addr
>fxp0 in recive from 10.1.1.251 to out_addr - (до ната)
>fxp0 out xmit from nat_addr to out_addr
>ответ:
>fxp0 in recive from out_addr to nat_addr - (до ната)
>fxp0 out xmit from nat_addr to 10.1.1.251Поянтно что имеено здесь место этого пакета
ipfw: 2900 Accept ICMP:11.0 146.188.65.37 10.1.1.251 in via fxp0
(ЗАМЕТИМ!!!! IN VIA FXP0)
пакет входит из внешней среды на внешний интерфейс!!!!!
откуда овтетчику известно о внутреенем адресе если после нат внутреннего адреса не существует?>xl0 out xmit from nat_addr to 10.1.1.251
>просто надо проследить сколько раз пакет по пути в firewall бьется -
>MAN ipfw - там эта ситуация описана, если ошибаюсьThe recv interface can be tested on either incoming or outgoing
packets, while the xmit interface can only be tested on outgoing
packets. So out is required (and in is invalid) whenever xmit is
used. Specifying via together with xmit or recv is invalid.Считается таким правилом
allow log icmp from any to any icmptype 3,4,8,11,12Допустим, пакет проходит фаервол три раза
Посылка пинга
1. В момент попадания на внутренний интерфейс in recv xl0
2. В момент покидания внутреннего и передачи его на внешний интерфейс out recv xl0 (до нат)
3. В момент покидания внешнего интерфейса out xmit fxp0 (после нат)
Ответ пинга
1. В момент попадания на внешний интерфейс in recv fxp0 (до нат)
2. В момент покидания внешнегоо интерфейса и передачи его на внутренний интерфейс out recv fxp0 (после нат)
3. В момент покидания внутреннего интерфейса out xmit xl0Как тогда составить правила
запретить in recv fxp0 для пакетов направленных на 10.1.0.0/16 до нат
НО РАЗРЕШИШЬ!!!!! out recv fxp0 для пакетов направленных на 10.1.0.0/16 после нат, и идущих на внутренний интерфейс
in via = in recv
out via = out xmit
??????? = out recv
>Считается таким правилом
>allow log icmp from any to any icmptype 3,4,8,11,12
>
>Допустим, пакет проходит фаервол три раза
>Посылка пинга
>1. В момент попадания на внутренний интерфейс in recv xl0
>2. В момент покидания внутреннего и передачи его на внешний интерфейс out
>recv xl0 (до нат)
>3. В момент покидания внешнего интерфейса out xmit fxp0 (после нат)
>Ответ пинга
>1. В момент попадания на внешний интерфейс in recv fxp0 (до нат)
>
>2. В момент покидания внешнегоо интерфейса и передачи его на внутренний интерфейс
>out recv fxp0 (после нат)
>3. В момент покидания внутреннего интерфейса out xmit xl0
>
>Как тогда составить правила
>запретить in recv fxp0
>для пакетов направленных на 10.1.0.0/16 до нат
>НО РАЗРЕШИШЬ!!!!! out recv fxp0 для пакетов направленных на 10.1.0.0/16 после нат,
>и идущих на внутренний интерфейс
>in via = in recv
>out via = out xmit
>??????? = out recvallow all from nat_addr to 10.1.0.0/16
deny all from any to 10.1.0.0/16 in fxp0
divert nat
А вообще, попробуй логировать во всех вариантах:
allow icmp log from any to any icmptype 3,4,8,11,12 in recive
allow icmp log from any to any icmptype 3,4,8,11,12 out xmit
allow icmp log from any to any icmptype 3,4,8,11,12 out recive
И посмотришь что почем....
Но наверно лучше не any to any а на твой nat_interface