ipfw и правила для сетей с масками, lond, 24-Окт-06, 11:18 [смотреть все]всем привет. имею такой впрос: есть сетка 192.16.8.0.0/24 и шлюз с натом. Есть правила для ipfw fxp0-локалка, fxp1 - инет. ipfw 1 divert ... ipfw add 2 deny ip from 192.168.0.0/16 to any via fxp0 ipfw add 3 deny ip from 192.168.0.0/24 to any via fxp1 ipfw add 4 allow ip from 192.168.0.0/24 to any по ipfw show смотрю статистику. когда машина из локалки (192.168.0.10 с маской 24) посылает пакеты (напр. инет шерстим), то пакеты обрываются на правиле 2. почему? ведь правило для маски /16, а у меня сеть - /24... убираем правило 2 и пробуем заново. теперь пакеты обрываются на правиле 3. а почему пакеты из локалки оказываются на внешнем интерфейсе (ведь даже в дефолтном rc.firewall есть блок "Stop RFC1918 nets on the outside interface")? если и это правило убрать, все нормально работает, все натится... в смятении я... |
- ipfw и правила для сетей с масками, muhlik, 11:41 , 24-Окт-06 (1)
>когда машина из локалки (192.168.0.10 с маской 24) посылает пакеты (напр. инет >шерстим), то пакеты обрываются на правиле 2. почему? ведь правило для >маски /16, а у меня сеть - /24... А вы думаете что в IP пакете есть маска источника? :-))) >убираем правило 2 и пробуем заново. теперь пакеты обрываются на правиле 3. >а почему пакеты из локалки оказываются на внешнем интерфейсе (ведь даже Ну если у вас в rc.conf gateway_enable="YES" то это нормальное поведение пакетов >в дефолтном rc.firewall есть блок "Stop RFC1918 nets on the outside >interface")? если и это правило убрать, все нормально работает, все натится... >в смятении я... Мда... я теперь тоже в смятении :-))) может вам стоит какую-нить литературу почитать по сетям прежде чем создавать такие сообщения ;-)
- ipfw и правила для сетей с масками, lond, 13:55 , 24-Окт-06 (2)
>>когда машина из локалки (192.168.0.10 с маской 24) посылает пакеты (напр. инет >>шерстим), то пакеты обрываются на правиле 2. почему? ведь правило для >>маски /16, а у меня сеть - /24... >А вы думаете что в IP пакете есть маска источника? :-))) зачм же тогда маски в правилах указываются?>>убираем правило 2 и пробуем заново. теперь пакеты обрываются на правиле 3. >>а почему пакеты из локалки оказываются на внешнем интерфейсе (ведь даже >Ну если у вас в rc.conf >gateway_enable="YES" >то это нормальное поведение пакетов чем обусловлено? объясните пжлст если не лень.
- ipfw и правила для сетей с масками, seller, 14:09 , 24-Окт-06 (3)
>>>когда машина из локалки (192.168.0.10 с маской 24) посылает пакеты (напр. инет >>>шерстим), то пакеты обрываются на правиле 2. почему? ведь правило для >>>маски /16, а у меня сеть - /24... >>А вы думаете что в IP пакете есть маска источника? :-))) >зачм же тогда маски в правилах указываются? чтобы можно было разные сети различать:)есть например, две сети, 192.168.0.1/28 и, допустим, 192.168.0.100/28. И правила для них есть, например allow all. А далее, например, стоит правило deny all from 192.168.0.0/24. Тогда всем 192.168.0.х будет резаться трафик, за исключением тех адресов, что входят в перечисленные выше сети с маской /28. Примерно понятно зачем? Можно в диапазоне 192.168.0.0-192.168.0.255 сделать несколько сетей, а правила писать как для каждой сети отдельно, так и для всего диапазона в целом. С масками работает ipfw, он сам адреса высчитывает и примеряет к правилам, в пакетах нет сетевой маски, она там и не нужна... Конкретно в вашем случае - правило срабатывает потому, что сеть с маской /24 является подсетью (читай - ее частью) сети с маской /16. Напр. берем адрес 192.168.0.1 - он входит как в диапазон /24, так и в диапазон /16. Поэтому и правила оба сработают (не одновременно, ессно). Отчего и почему так - написано в любой нормальной книжке по сетям. - ipfw и правила для сетей с масками, muhlik, 16:19 , 24-Окт-06 (4)
>>>убираем правило 2 и пробуем заново. теперь пакеты обрываются на правиле 3. >>>а почему пакеты из локалки оказываются на внешнем интерфейсе (ведь даже >>Ну если у вас в rc.conf >>gateway_enable="YES" >>то это нормальное поведение пакетов >чем обусловлено? объясните пжлст если не лень. Хм... практически в тупик поставил :-))) В общем если gateway_enable="YES" то машинка работает как шлюз, и пакеты гуляют соответственно таблице маршрутизации, ну например имеем: (сеть 192.168.0.0.24) <-> (наш шлюз) <-> (инет) так вот например машинка из нашей сети шлет пакет на адрес например 80.80.80.80 :-), сначала он попадает на сетевую карту шлюза которая смотрит в сторону сети, затем согласно маршрутизации (если default gateway у нас в инет прописан) шлюз отправляет этот пакет в инет, так вот наш пакет в какое-то время будет на сетевухе которая смотрит в инет, и если не использовать например NAT то пакет так и уйдет со шлюза с нашим внутренним адресом, и боюсь никогда уже не вернется :-))))
|