Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2014-07-04 20:29:08

  gwad - Użytkownik

gwad
Użytkownik
Zarejestrowany: 2014-07-03

(FreeBSD) IPFW: WAN + LAN1 + LAN2

Mam router oparty na FreeBSD z 3-ma interfejsami:
em0 - 192.168.2.2/24 (wyjście do LAN2)
em1 - 192.168.1.2/24 (wyjście do LAN1)
sk0 - 192.168.3.2/24 (wyjście do WAN)
Przez sk0 jestem połączony do routera sprzętowego dostawcy Internetu. Na tym interfejsie mam NAT.
Mogę uzyskać połączenia:
- z FreeBSD do LAN1
- z FreeBSD do LAN2
- z FreeBSD do WAN
- z FreeBSD do Internetu
- z LAN2 do FreeBSD
- z LAN2 do WAN
- z LAN2 do Internetu
- z LAN2 do 192.168.1.2
- z LAN1 do FreeBSD
- z LAN1 do 192.168.2.2
Nie mogę uzyskać połączenia:
- z LAN1 do LAN2
- z LAN2 do LAN1
Jak to zrobić ? Podejrzewam, że może trzeba zrobić jakieś specjalne natowanie, nie wiem jednak jak.
Niektóre moje reguły ipfw:

Kod:

divert 8668 ip4 from any to any via sk0
allow ip from 192.168.2.0/24 to 192.168.1.0/24
allow ip from 192.168.1.0/24 to 192.168.2.0/24

Proszę o pomoc.

Offline

 

#2  2014-07-07 09:22:42

  bryn1u - Użytkownik

bryn1u
Użytkownik
Zarejestrowany: 2009-04-17

Re: (FreeBSD) IPFW: WAN + LAN1 + LAN2

to chyba nie jest twoj caly firewall ? korzystasz z /etc/rc.firewall czy masz swoj wlasny napisany ?  w ogole jakie opcje masz skonfigurowane w GENERIC'u ? bo do natd jest potrzebny IPDIVERT, ktorego widze masz w regulce. Gdzie tu jest przekierowanie NAT ?


Opcje w kernelu:

options    IPFIREWALL            # enables IPFW
options    IPFIREWALL_VERBOSE        # enables logging for rules with log keyword
options    IPFIREWALL_VERBOSE_LIMIT=5    # limits number of logged packets per-entry
options    IPFIREWALL_DEFAULT_TO_ACCEPT # sets default policy to pass what is not explicitly denied
options    IPDIVERT            # enables NAT

Po trzecie nie lepiej ci uzyc PF, ktory jest standardowo wlaczony we FreeBSD a od FreeBSD 10 caly PF obsluguje SMP ?

Masz dodatkowy wpis w rc.conf ?

gateway_enable="YES"        # enables the gateway
natd_enable="YES"        # enables NAT
natd_interface="rl0"        # specify interface name of NIC attached to Internet
natd_flags="-f /etc/natd.conf"    # -m = preserve port numbers; additional options are listed in natd(8)

Przyklad: w natd.conf

redirect_port tcp 192.168.0.2:6667 6667
redirect_port tcp 192.168.0.3:80 80

Ostatnio edytowany przez bryn1u (2014-07-07 09:40:50)


E-Booki: FreeBSD, OpenBSD, Linux, Hacking, PHP, Catia, Perl_CGI, Mysql ...
http://unix-ebooki.neth.pl/

Offline

 

#3  2014-07-11 11:11:59

  gwad - Użytkownik

gwad
Użytkownik
Zarejestrowany: 2014-07-03

Re: (FreeBSD) IPFW: WAN + LAN1 + LAN2

Dziękuję za zainteresowanie moim problemem :).

bryn1u napisał(-a):

to chyba nie jest twoj caly firewall ? korzystasz z /etc/rc.firewall czy masz swoj wlasny napisany ?

Oczywiście, że to nie jest cały firewall. Napisałem przecież, że to niektóre reguły - istotne dla mojego problemu. Mam własną konfigurację. Reguł jest dużo, są specyficzne dla moich potrzeb, więc nie wymieniałem ich wszystkich.

bryn1u napisał(-a):

w ogole jakie opcje masz skonfigurowane w GENERIC'u ? bo do natd jest potrzebny IPDIVERT, ktorego widze masz w regulce.

Pisząc, że mam NAT, miałem na myśli, że mam NAT, który działa, mogę uzyskać połączenia:
- z LAN2 do FreeBSD
- z LAN2 do WAN
- z LAN2 do Internetu
Wymienione przeze mnie reguły, to są reguły aktywne (np. ipfw list), a nie tylko wpisane w skrypcie. Tak więc skoro reguła pokazuje

Kod:

divert 8668 ip4 from any to any via sk0

to znaczy, że IPDIVERT działa.

bryn1u napisał(-a):

Gdzie tu jest przekierowanie NAT ?
Przyklad: w natd.conf

redirect_port tcp 192.168.0.2:6667 6667
redirect_port tcp 192.168.0.3:80 80

Nie bardzo rozumiem po co ? Nie zamierzam zrobić przekierowania z WAN do jakiegoś hosta, portu. Może niepotrzebnie zasugerowałem, że problem tkwi w natowaniu. Może za bardzo skupiłeś się na natowaniu.

bryn1u napisał(-a):

Po trzecie nie lepiej ci uzyc PF, ktory jest standardowo wlaczony we FreeBSD a od FreeBSD 10 caly PF obsluguje SMP ?

Być może masz rację, ale chciałbym jednak zrobić to na IPFW. Pewnie dlatego, że sporo czasu kosztowało mnie stworzenie skryptu. Przy tym to dopiero początki mojej przygody z FreeBSD. Nie chciałbym się na nim zawieźć na początku. Większość innych problemów udaje mi się rozwiązać. Docelowo mam zamiar rozwiązać wszystkie :).

bryn1u napisał(-a):

Masz dodatkowy wpis w rc.conf ?

gateway_enable="YES"        # enables the gateway
natd_enable="YES"        # enables NAT
natd_interface="rl0"        # specify interface name of NIC attached to Internet
natd_flags="-f /etc/natd.conf"    # -m = preserve port numbers; additional options are listed in natd(8)

Tak, bardzo podobny. Podstawowy NAT działa.

Mam prośbę, przeczytaj mój post jeszcze raz uważnie. Mój problem to komunikacja pomiędzy dowolnymi hostami w LAN1 i LAN2 (nie WAN).

Właśnie pomyślałem, że to może być problem routingu statycznego w hostach w LAN1 i LAN2. Sprawdzę, przy najbliższej okazji.

Offline

 

#4  2014-07-24 09:39:45

  gwad - Użytkownik

gwad
Użytkownik
Zarejestrowany: 2014-07-03

Re: (FreeBSD) IPFW: WAN + LAN1 + LAN2

gwad napisał(-a):

Właśnie pomyślałem, że to może być problem routingu statycznego w hostach w LAN1 i LAN2. Sprawdzę, przy najbliższej okazji.

No i jednak miałem dobre przeczucie, wszystko działa, tylko trzeba było wskazać hostom w LAN-ach gdzie mają szukać hostów z tego innego LAN-a. Poza tym w błąd mnie wprowadził jeden AP Edimax'a. Jest w LAN1 i do tej pory nie można go "spingować" z LAN2. Pewnie to kwestia jego firmware.
Czyli konfiguracja IPFW we FreeBSD była cały czas poprawna.
Temat można zamknąć.

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)