Перейти до

Рекомендованные сообщения

Опубліковано: (відредаговано)

ipfw show - при запущеном фаере.

06010  466  25525 nat 1 ip from table(2) to not table(9) via ng0
12000  470  26497 pipe tablearg ip from table(3) to any via em0 in
12001    1    328 pipe tablearg ip from any to table(4) via em0 out
65533  151  10228 deny ip from table(2) to any via em0
65534    0      0 deny ip from any to table(2) via em0
65535 1823 785668 allow ip from any to any

Получается у меня после загрузки не прописывается правило ${FwCMD} add 6011 nat 1 ip from any to ${ext_ip} via ng0

после команды

/etc/rc.d/ipfw restart
net.inet.ip.fw.enable: 1 -> 0
net.inet6.ip6.fw.enable: 1 -> 0
ipfw: getsockopt(IP_FW_ADD): Invalid argument
Firewall rules loaded.
Всё начинает работать.
06010 1916  169667 nat 1 ip from table(2) to not table(9) via ng0
06011 3744 5149447 nat 1 ip from any to тут айпишник внешний via ng0
12000 1918  169739 pipe tablearg ip from table(3) to any via em0 in
12001 3739 5149180 pipe tablearg ip from any to table(4) via em0 out
65533    0       0 deny ip from table(2) to any via em0
65534    0       0 deny ip from any to table(2) via em0
65535 1544  598517 allow ip from any to any

Відредаговано 0TshEL_n1ck
Опубліковано:
ipfw: getsockopt(IP_FW_ADD): Invalid argument

Вот еще эта строчка меня смущает...

 

Це так Nightfly фаєр зробив, там по дефолту в феєрі правило є під номером 65535, а в конфігу воно дублюється.

Тому вилазить помилка.

Я бачите проблеми не бачу, є нат, через нього ходят пакети.

Покажіть конфіг фаєру.

Опубліковано:

/etc/firewall.conf

#!/bin/sh

# firewall command
FwCMD="/sbin/ipfw -q"

${FwCMD} -f flush

# Networks define
${FwCMD} table 2 add 72.20.138.0/24
${FwCMD} table 9 add 72.20.136.26/22

#NAT
ext_ip=`ifconfig ng0 inet | grep inet | awk '{print $2}'`
${FwCMD} nat 1 config log if ng0 reset
${FwCMD} add 6010 nat 1 ip from table\(2\) to not table\(9\) via ng0
${FwCMD} add 6011 nat 1 ip from any to ${ext_ip} via ng0

#Shaper - table 4 download speed, table 3 - upload speed
${FwCMD} add 12001 pipe tablearg ip from any to table\(4\) via em0 out
${FwCMD} add 12000 pipe tablearg ip from table\(3\) to any via em0 in

# default block policy
${FwCMD} add 65533 deny all from table\(2\) to any via em0
${FwCMD} add 65534 deny all from any to table\(2\) via em0
${FwCMD} add 65535 allow all from any to any

При загрузке серва - пользователи с em0 не ходят в инет. Посмотрите предидущее сообщение, там явно видно что правило 6011 при загрузке системы не добавляется. Только после /etc/rc.d/ipfw restart

Опубліковано:

в /etc/rc.conf

ppp_nat="YES"

 

в фаєрі  коментю правила 

#NAT
ext_ip=`ifconfig ng0 inet | grep inet | awk '{print $2}'`
${FwCMD} nat 1 config log if ng0 reset
${FwCMD} add 6010 nat 1 ip from table\(2\) to not table\(9\) via ng0
${FwCMD} add 6011 nat 1 ip from any to ${ext_ip} via ng0

все ніби взлітає

 

чомусь затинається воно з тунелем через ipwf

без тунелю ніби гут.

 

напевно нат через ppp хай собі і буде 

${FwCMD} add 6011 nat 1 ip from any to ${ext_ip} via ng0

це тіпа оце правило.

Опубліковано: (відредаговано)

отак у мене через тунель паше і прямо зараз через оцей нат я вам пишу))

#NAT

${FwCMD} nat 1 config log if tun0 reset same_ports

${FwCMD} add 6000 nat 1 ip from table\(2\) to not table\(9\) via tun0

${FwCMD} add 6001 nat 1 ip from any to any via tun0

 

хоча  на іншому насі у мене затик :D

розбираю карту польотів

${FwCMD} nat 1 config log if tun0 reset same_ports

а у меня 

${FwCMD} nat 1 config log if tun0 reset 

 same_ports - может тут собака зарыта при загрузке ???

У вас статика айпиадрес внешний или динамика ??? 

У меня тоже чудненько работает, но не после загрузки.... Приходится ручками /etc/rc.d/ipfw restart делать... 

Відредаговано 0TshEL_n1ck
Опубліковано:

загружає при запуску правила.

 

пакети ломляться на нат,

${FwCMD} add 6000 nat 1 ip from table\(2\) to not table\(9\) via tun0

 

але тут стовбняк їх ловить, це при 

ppp_nat="YES" і при ppp_nat="no"

 

але коли ppp_nat="YES" і  правила нату у фаєрі закоментовані то нет взлітає.

 

і ppp_nat="YES" рівноцінно 

${FwCMD} add 6011 nat 1 ip from any to ${ext_ip} via ng0

отой нат, що я приводив вище робочий то на bsd 8.2, і  паше уже так два роки

на 9,2_64 отака сама лобуда як і у вас, написав тількищо як полікував.

Опубліковано: (відредаговано)

Так это ppp соединение поднимать нужно ??? Или тупо закоментировать  ${FwCMD} add 6011 nat 1 ip from any to ${ext_ip} via ng0  в конфе ваерволла, и в  rc.conf добавить ppp_nat="YES" ???

Відредаговано 0TshEL_n1ck
Опубліковано:

 

 

Так это ppp соединение поднимать нужно ??? 

ну я через ppp а ви погугліть як ото через мпд зробити.

хоча для одного зєднання тягнути мпд мені просто ліньки.

конфіг майже одинаковий, глючить одинаково коли сесія паде, і буває тільки аж після ребуту  машини знову піднімається))

такі то справи з пижиним аплінком  аплінком по pppoe :D

Опубліковано:

Тогда пусть крутиться как крутиться... Бесперебойники помощнее поставлю только... Что б ребутить меньше :) Хотя интересно почему оно так происходит, и должен же быть не костыльный способ поправить... Есть у меня подозрение что в ифконфиге ng0 появляется позже чем вырисовываются правила в фаере... Из-за того правило при старте и не работает, потому как ему не прописывается айпи с скрипта.. или нужно постоянный айпи брать, или как-то отложить запуск правила.

Опубліковано: (відредаговано)

mpd_enable="yes" у рц.конфі поставсте вище аніж firewall_enable="yes"

тоді повинно при старті нормально запуститися.

Відредаговано L1ght
Опубліковано: (відредаговано)
sshd_enable="YES"
ntpd_enable="YES"
mpd_enable="YES"
mpd_flags="-b"
# ====== added by UBinstaller ====

#all needed services
mysql_enable="YES"
apache22_enable="YES"
dhcpd_enable="YES"
dhcpd_flags="-q"
dhcpd_conf="/usr/local/etc/multinet/dhcpd.conf"
dhcpd_ifaces="em0"

# ==========
#access/shape/nat
firewall_enable="YES"
firewall_nat_enable="YES"
dummynet_enable="YES"
firewall_script="/etc/firewall.conf"

оно намного выше... Поднял в самый верх, всёравно фаер жеж вродь один с первых запускает и проверяет...

Відредаговано 0TshEL_n1ck
Опубліковано: (відредаговано)

Нетграф в ядрі або модулями?

Фаєрвол в ядрі чи модулями?

Чи може воно не встигає підіймати сессію тому і не відпрацьовує як треба.

Тре щось на зразок sleep 5, але не знаю як його правильно у рц.конф запхати.

Ща подивлюсь, та точніше скажу.

Так, у рц конф рядок додати

sleep 5

Якщо все одно не вийде - то збільшити.

sshd_enable="YES"
ntpd_enable="YES"
mpd_enable="YES"
mpd_flags="-b"
# ====== added by UBinstaller ====

#all needed services
mysql_enable="YES"
sleep 5
apache22_enable="YES"
dhcpd_enable="YES"
dhcpd_flags="-q"
dhcpd_conf="/usr/local/etc/multinet/dhcpd.conf"
dhcpd_ifaces="em0"

# ==========
#access/shape/nat
firewall_enable="YES"
firewall_nat_enable="YES"
dummynet_enable="YES"
firewall_script="/etc/firewall.conf"

Є ще один варіант, скріпти інтерфейс ап\даун у мпд.

Просто зробити щоб при піднятті інтерфейсу рестартувати ipfw.

Другий варіант є філософскі красивіший :)

Відредаговано L1ght
Опубліковано:

Читайте вище, гадаю усе діло в тому, що лінк не встигає піднятися, тому правило не відпрацьовує як треба і повертає пустий результат.

Опубліковано: (відредаговано)
kldstat
Id Refs Address            Size     Name
 1   34 0xffffffff80200000 15b93c0  kernel
 2    3 0xffffffff817ba000 22930    ipfw.ko
 3    2 0xffffffff817dd000 177e0    libalias.ko
 4    1 0xffffffff817f5000 7470     ipfw_nat.ko
 5    1 0xffffffff817fd000 1ad38    dummynet.ko
 6    1 0xffffffff81a12000 3a3a     ng_socket.ko
 7    8 0xffffffff81a16000 b154     netgraph.ko
 8    1 0xffffffff81a22000 2866     ng_mppc.ko
 9    1 0xffffffff81a25000 831      rc4.ko
10    1 0xffffffff81a26000 42b5     ng_iface.ko
11    1 0xffffffff81a2b000 59fc     ng_ppp.ko
12    1 0xffffffff81a31000 1a7b     ng_tee.ko
13    1 0xffffffff81a33000 4446     ng_ether.ko
14    1 0xffffffff81a38000 44ee     ng_pppoe.ko
15    1 0xffffffff81a3d000 30e5     ng_vjc.ko

Ядро не пересобирал, модули по ходу есть... Машину пустил в ребут. Появляется второй вопрос... Какой-то сбой на стороне провайдера, мпд перезапускается, и соответсвтено появляется другой внешний айпи... Как в таком случае быть ??? 

Відредаговано 0TshEL_n1ck
Опубліковано: (відредаговано)

Так усе модулямі підгружено, тоді все як я казав - некрасиво через сліп у рц.конфі, або скріпти по ап\даун нж0 інтерфейсу.

 

2 варіант додати до мпд

 set iface up-script /usr/local/etc/mpd5/link-up.sh
 set iface down-script /usr/local/etc/mpd5/link-down.sh

Створити 2 файли.

1)
touch /usr/local/etc/mpd5/link-up.sh
touch /usr/local/etc/mpd5/link-down.sh
2)
chmod +x /usr/local/etc/mpd5/link-up.sh
chmod +x /usr/local/etc/mpd5/link-down.sh

вміст файлу ап
cat /usr/local/etc/mpd5/link-up.sh
#!/bin/sh
/etc/rc.d/ipfw restart

Пане mgo, для свого пппд самі знайдете як зробити?))

Відредаговано L1ght
Опубліковано:

 

 

що лінк не встигає піднятися, тому правило не відпрацьовує як треба і повертає пустий результат.
 

ага і після того як тунель піднявся і перегряжаю фаєр теж ?

 

мене влаштовує нат через ppp.

ніби  їде все.

Опубліковано:

 

що лінк не встигає піднятися, тому правило не відпрацьовує як треба і повертає пустий результат.
 

ага і після того як тунель піднявся і перегряжаю фаєр теж ?

 

мене влаштовує нат через ppp.

ніби  їде все.

 

Я не надто зрозумів як у вас усе працює, тому отак сказав :)

Опубліковано:

У меня первый вариант с слипом не заработал, даже указыал и 10 и сколько угодно, я вообще кста в мануале по rc.conf и упоминания не нашёл по поводу слипа, откуда инфа ??? 

Второй вариант - правило поднялось, вродь всё заработало ) Большое человеческое спасибо за помощь, и за то что еще вчера вечером не послали ) 

Опубліковано: (відредаговано)

У меня первый вариант с слипом не заработал, даже указыал и 10 и сколько угодно, я вообще кста в мануале по rc.conf и упоминания не нашёл по поводу слипа, откуда инфа ??? 

Второй вариант - правило поднялось, вродь всё заработало ) Большое человеческое спасибо за помощь, и за то что еще вчера вечером не послали ) 

Та нема за що.

 

Інфа така, що рц.конф звичайний шел скріпт.

Ось простий приклад такого скріпту з сліпом.

#!/bin/sh
echo "wait..."
sleep 5
"done"
Відредаговано L1ght

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    • Немає користувачів, що переглядають цю сторінку.
×
×
  • Створити нове...