powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / NATd
23 сообщений из 23, страница 1 из 1
NATd
    #33535605
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Интересная ситуёвина:
Есть локалка домовая - 10.0.0.0
Я от локалки отделён фряхой 6.0. Внутренняя сеть 192.168.254.0
На фряхе natd. кусок файрволла:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
FwCMD="/sbin/ipfw"
LanOut="xl0"
LanIn="rl0"
#LanTunnel="gif0"
IpOut="10.21.64.215"
IpIn="192.168.254.254"
NetMask="24"
NetIn="192.168.254.0"
NetOut="10.21.64.0"
...........................
${FwCMD} add divert natd ip from ${NetIn}/${NetMask} to any out via ${LanOut}
${FwCMD} add divert natd ip from any to ${IpOut} in via ${LanOut}
.....................
${FwCMD} add allow tcp from any to any established
${FwCMD} add allow ip from ${IpOut} to any out xmit ${LanOut}
${FwCMD} add allow tcp from any to ${IpOut}  21  via ${LanOut}
${FwCMD} add allow tcp from any to ${IpOut}  40000 - 65534  via ${LanOut}
строка запуска:
Код: plaintext
natd -interface xl0 -m -u
На машине ftp. Так вот входящие-исходящие пакеты по ftp - когда народ с локалки лезет на
машину проходят через nat - соответственно загрузка cpu под 100% (машина слабенькая)...

И так и с ключом u и без него...
Раньше стояла 4.11 с ЭТИМ же файрволлом на этой же машине - всё было пучком...

============
я чё-то недокурил в манах, или что-то поменялось в реализации nat, что забыли отразить в
мане?

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
NATd
    #33535854
Фотография Oerr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ставлю одну копейку на
Код: plaintext
1.
${FwCMD} add allow tcp from any to ${IpOut}  20 - 21  via ${LanOut}LanIn}

PS... 6.0 не стабильна.. я вот на GW 4.10 держу и не жужжу, хотя машинка... эх... и когда же это железо умрет? :)


http://surgutnet.ru
...
Рейтинг: 0 / 0
NATd
    #33535857
Фотография Oerr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
праститте за "LanIn}" :)

http://surgutnet.ru
...
Рейтинг: 0 / 0
NATd
    #33535986
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да я не про то....
почему, с какого перепугу пакеты наружние в NATd лезут? Это внешнее
соединение, человек коннектится снаружи на этот вервер... их не надо
натить...


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
NATd
    #33535988
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мдя... чё-то у меня тоже с утра с клавой


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
NATd
    #33535994
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а почему шоха...
поиграться захотелось. Так-то у меня везде 4.11 живёт....


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
NATd
    #33536169
Фотография Oerr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что-то я совсем запутался в схемке... можнокартинку или псевдографику задействовать?

http://surgutnet.ru
...
Рейтинг: 0 / 0
NATd
    #33536408
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
main_comp(192.168.254.1) -> FreeBSD(192.168.254.254&10.21.64.215) -> local intranet -> inet

Есть люди в локал интренете, для них открыт доступ по FTP на FreeBSD. Так вот траффик к ним и от них почему-то проходит через NAT. Хотя по идее не должен...

===
интересности - он в NAT попадает, но в логах ftpd адреса внешние.
Откуда я взял что в NAT попадает - по загрузке проца, его на 60% при скачивании ими файлов, грузит natd... Если убить NATd то скорость у них резко возрастает и на первое место по ресурсам вылазиет ftpd....

===
вот и не пойму, как его заставить обойти nat... был б снаружи инет - ключ -u однозначно решил бы проблему. Но снаружи частная сеть...

И почему в 4.11 работало нормально?....
...
Рейтинг: 0 / 0
NATd
    #33536701
Фотография Oerr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Теперь понятно. Я бы переписал так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
wCMD="/sbin/ipfw"
LanOut="xl0"
LanIn="rl0"
#LanTunnel="gif0"
IpOut="10.21.64.215"
IpIn="192.168.254.254"
NetMask="24"
NetIn="192.168.254.0"
NetOut="10.21.64.0"
...........................
${FwCMD} add divert natd ip from ${NetIn}/${NetMask} to any out via ${LanOut}

.....................
${FwCMD} add allow tcp from any to any established
${FwCMD} add allow ip from ${IpOut} to any out xmit ${LanOut}
${FwCMD} add allow tcp from any to ${IpOut}  20 - 21  via ${LanOut} setup
${FwCMD} add allow tcp from any to ${IpOut}  40000 - 65534  via ${LanOut}
на самом деле эти пакеты натятся вот из за этого
Код: plaintext
1.
${FwCMD} add divert natd ip from any to ${IpOut} in via ${LanOut}
Что именно вы хотели сделать этой строкой?

http://surgutnet.ru
...
Рейтинг: 0 / 0
NATd
    #33536771
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
таки без этой строки не работает инет у меня (192,168,254,1)
man natd
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
...................
You will need to adjust the /etc/rc.firewall script to taste.  If
you are not interested in having a firewall, the following lines
will do:
/sbin/ipfw -f flush
/sbin/ipfw add divert natd all from any to any via ed0
/sbin/ipfw add pass all from any to any
....................
эти две строки - замена этой одной. с ней (одной) то же самое....


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
NATd
    #33536906
Фотография Oerr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
lissyara : траффик к ним и от них почему-то проходит через NAT. Хотя по идее не должен...

из за any и попадает..
Код: plaintext
1.
${FwCMD} add divert natd ip from any to ${IpOut} in via ${LanOut}
К сожалению у меня нет под рукой мана, но если я правильно понимаю принцип работы, то в данном случае ${IpOut} то, кому возвращается пакет и если указать внутреннюю сеть ${NetIn}/${NetMask} то все должно работать
Код: plaintext
1.
${FwCMD} add divert natd ip from any to ${NetIn}/${NetMask} in via ${LanOut}
или я не прав?


http://surgutnet.ru
...
Рейтинг: 0 / 0
NATd
    #33536977
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это NATd - на внешнем интерфейсе не может быть пакетов для внутренней сети
в принципе
там всё внешняя сеть и все пакеты идут на внешний IP...


===
точно...
а natd разбирается куда их - внутрь сети или в фаер вернуть...
так что вывод у меня один - кривая реализация natd, или он стал жрать
принципиально больше ресурсов...


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
NATd
    #33537095
Фотография Oerr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ладно, приду домой посмотрю ман, сделаю эксперимент... остается выяснить различает ли ipfw транслированный трафик.

http://surgutnet.ru
...
Рейтинг: 0 / 0
NATd
    #33537282
Фотография Oerr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На крайняк если не распознает можно сделать
Код: plaintext
1.
2.
3.
4.
${FwCMD} add skipto NNN ip from any to ${IpOut}  20 - 21  in via ${LanOut}
${FwCMD} add skipto NNN ip from ${IpOut}  20 - 21  to any out via ${LanOut}
${FwCMD} add divert natd ip from any to ${IpOut} in via ${LanOut}
NNN

http://surgutnet.ru
...
Рейтинг: 0 / 0
NATd
    #33537305
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тема! Я и не подумал!
(тока придётся опытным путём выяснять - смогу ли я, изнутри лазить на
внешние ftp - ответы от них тоже будут skipto - вероятно )


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
NATd
    #33538119
Фотография Oerr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
C другими ftp будет все нормально, так как правило затрагивает только ${IpOut} 20-21 .
А с nat и 6.0 действительно странности, походу схему взаимодействия поменяли... и где-то забыли об это сказать, либо нужно отказываться от такой связки если такие ресурсы требуются...
Я честно говоря STABLE ждать буду...

http://surgutnet.ru
...
Рейтинг: 0 / 0
NATd
    #33538120
Фотография Oerr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотя блин.. с этим интранетом... я уже прямо не знаю... может есть возможность зарутить сети?

http://surgutnet.ru
...
Рейтинг: 0 / 0
NATd
    #33538266
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OerrХотя блин.. с этим интранетом... я уже прямо не знаю... может есть возможность зарутить сети?

http://surgutnet.ru
неа... если я правильно понял неправильно написанное слово `зарутить` :)

воткнул
Код: plaintext
 01400  skipto  1700  tcp from me to any
жду клиентов... :) Когда потащщут видно будет...
...
Рейтинг: 0 / 0
NATd
    #33538284
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
#ipfw list
 00100  check-state
 00200  allow ip from any to any via lo0
 00300  deny ip from  192 . 168 . 0 . 0 / 16  to any in via xl0
 00400  deny ip from  172 . 16 . 0 . 0 / 12  to any in via xl0
 00500  deny ip from any to  192 . 168 . 254 . 0 / 24  via xl0
 00600  deny tcp from any to any dst-port  135 - 140  via xl0
 00700  deny tcp from any  135 - 140  to any via xl0
 00800  deny tcp from any  445  to any via xl0
 00900  deny tcp from any to  10 . 21 . 64 . 215  dst-port  144 - 1026  via xl0
 01000  deny tcp from any  3000 - 3001  to any via xl0
 01100  deny tcp from any to any dst-port  3000 - 3001  via xl0
 01200  deny tcp from any to  10 . 21 . 64 . 215  dst-port  3306  via xl0
 01300  fwd  192 . 168 . 254 . 254 , 2121  tcp from  192 . 168 . 254 . 0 / 24  to any dst-port  21  via xl0
 01400  fwd  127 . 0 . 0 . 1 , 3128  tcp from  192 . 168 . 254 . 0 / 24  to any dst-port  80  via xl0
 01500  skipto  1900  ip from me to any
 01600  divert  8668  ip from  192 . 168 . 254 . 0 / 24  to any out via xl0
 01700  divert  8668  ip from any to  10 . 21 . 64 . 215  in via xl0
 01800  allow gre from any to any via xl0
 01900  allow gre from any to any via rl0
 02000  allow tcp from any to any established
 02100  allow ip from  10 . 21 . 64 . 215  to any out xmit xl0
 02200  allow udp from any  53  to any via xl0
 02300  allow udp from any  123  to any via xl0
 02400  allow icmp from any to any icmptypes  0 , 8 , 11 
 02500  allow tcp from any to any via rl0
 02600  allow udp from any to any via rl0
 02700  allow icmp from any to any via rl0
 02800  allow tcp from any to  10 . 21 . 64 . 215  dst-port  21  via xl0
 02900  allow tcp from any to  10 . 21 . 64 . 215  dst-port  40000 - 65534  via xl0
 65535  deny ip from any to any
таже мура... прям растерян... надо заметить у меня ещё и ipfw2...
...
Рейтинг: 0 / 0
NATd
    #33539844
Фотография Oerr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
прямо мистика......

Смотрим какие были планы на лето 2005...
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Поддержка NAT в ipfw2 и улучшения libalias: Включенный во FreeBSD межсетевой экран ipfw2 на данный момент не поддерживает NAT на уровне ядра, хотя его архитектура предусматривает расширение и базовый механизм динамического создания правил и их просмотра в ядре уже присутствует. Одновременно с этим пользовательский NAT поддерживается в библиотеке libalias, которая недавно была преобразована в модуль ядра. У проекта две следующие цели:
создание механизма для вызова LibAlias из ipfw2
пересмотр LibAlias для улучшения её структур, в частности: 
применять, исследовать и, возможно, оптимизировать базовые операции (создание сеанса, поиск и уничтожение; восстановление tcp-потока);
обеспечить механизм регистрации/отключения обработчиков протоколов вместо манипуляции с исходным кодом;
улучшить соответствие структуры данных ядра и libalias для возможного снижения количества копий.
Указанное выше относится к  5 .x и -current, а возможно также и к  4 .x. Претенденты должны быть знакомы с вопросами работы сети, связанными с NAT, а также стеком сетевых протоколов ядра. Координирует работы Luigi Rizzo.
Смотрим что в ChangeLog-e..
Код: plaintext
1.
A bug in the libalias library which causes a core dump when the -reverse option is specified in natd( 8 ) has been fixed.
В мане..
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Packets diverted to userland, and then reinserted by a userland process
may lose various packet attributes.  The packet source interface name
will be preserved if it is shorter than  8  bytes and the userland process
saves and reuses the sockaddr_in (as does natd( 8 )); otherwise, it may be
lost.  If a packet is reinserted in this manner, later rules may be
incorrectly applied, making the order of divert rules in the rule
sequence very important.
Другими словами я прямо даже не знаю :(

http://surgutnet.ru
...
Рейтинг: 0 / 0
NATd
    #33539918
Фотография lissyara
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А откуда статейка-то?
Там координат этого Луи нету? Я б ему написал...

Надо сорцы обновить - может чё и правда нетак.... У меня ж первый релиз, с
дыркой в фаере.
всё недосуг...


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
NATd
    #33539976
Фотография Oerr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обрывки с официального. Соответственно оттуда же координаты...
http://www.freebsd.org/ru/projects/summerofcode.html
rizzo@[remove this fuck] icir.org

http://surgutnet.ru
...
Рейтинг: 0 / 0
NATd
    #33966627
Orlic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
lissyara
Код: plaintext
1.
2.
3.
4.
5.
#ipfw list
 00100  check-state
............................................
 02000  allow tcp from any to any established
............................................
 65535  deny ip from any to any


зачем одновременно правила check-state и established?

если был пакет, ИНИЦИИРУЮЩИЙ СОЕДИНЕНИЕ и разрешенный правилом с опцией SETUP keep-state, то дальнейшие пакеты этого соединения, равно как и ответные пакеты, попадают под правило check-state... Тогда остальные пакеты, без флага SYN, но и не попавшие под check-state нельзя считать "законными" пакетами, так как они не инициировали соединение, не создали динамическое правило, значит, левые пакеты....

Я прав или нет?

С другой стороны, если срок жизни динамического правила истек, то "правильный" пакет не обработается по соответствующему динамическому правилу в check-state, значит, должно быть правило allow established... Маленькая дырочка в правилах...

Как быть?..
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / NATd
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]