router

Serwery i sieci oparte na Slackware, wszelkiego rodzaju usługi, troubleshooting.

Moderatorzy: Moderatorzy, Administratorzy

Awatar użytkownika
tssmoq
Użytkownik
Posty: 53
Rejestracja: 2004-12-14, 19:52
Kontakt:

router

Post autor: tssmoq »

Witam, dzisiaj zmienilem swojego ISP. U dotychczasowego mialem stale zewnetrzne ip. Dlatego tez mialem swoj wlasny plik rc.inetd1 podnoszacy obie karty z routingiem itd.
Niestety nowy prowider przedziela wszystko przez dhcp. Wiem, ze odpalajac dhcpcd wszystko samo sie konfiguruje na eth0 (i tak jest). Ale niestety siec wewnetrzna nie dziala :(
Czy ktos moglby na szybko podac jakis pomysl jak to pozmieniac, zeby znowu w domu wszyscy mieli internet?
Wklejam tez jak to wygladalo do tej pory

Kod: Zaznacz cały

/sbin/ifconfig eth0 [przydzielone ip] netmask 255.255.... up
/sbin/route add default gw [ip bramki]
/sbin/ifconfig eth1 10.0.0.1 netmask 255.255.... broadcast 10.0.0.255 up

iptables -t filter -A FORWARD -s 10.0.0.0/255.255.... -d 0/0 -j ACCEPT
iptables -t filter -A FORWARD -s 0/0-d 10.0.0.0/255.255....  -j ACCEPT
iptables -t nat -A POSTROUTING -s [konkretne ip kazdego hosta] -d 0/0 SNAT --to-source [przydzielone ip]

echo "1" > /proc/sys/net/ipv4/ip_forrward

[i tu reszta firewalla]


Bardzo prosze o pomoc w postawieniu tej sieci na nowo;
z gory dziekuje za wszelkie sugestie i pomoc

Awatar użytkownika
mrs
Użytkownik
Posty: 3
Rejestracja: 2005-10-25, 13:32
Lokalizacja: Białystok

Re: router

Post autor: mrs »

Też mam przydzielany dynamicznie, ale to nie stało na przeszkodzie by wpisać tego IPa na sztywno do pliku rc.inet1.conf. Pod warunkiem oczywiście, że IP się nie zmienia.

Jeśli nie jest stały to w regułkach z POSTROUTING zamiast SNAT wpisz MASQUERADE, czyli jakoś tak:

iptables -t nat -A POSTROUTING -s [konkretne ip kazdego hosta] -j MASQUERADE

Awatar użytkownika
siergiej
Użytkownik
Posty: 79
Rejestracja: 2005-10-02, 12:08

Re: router

Post autor: siergiej »

na poczatek skonfiguruj oba interfejsy sieciowe w pliku /etc/rc.d/rc.inet1.conf przy czym
na eth0 (powiedzmy ze eth0 dostajesz neta przez dhcp) a drugi skonfiguruj sobie jakis adresik itd.
nastepnie jest jedna róznica miedzy postawianiem adresu z dhcp a statycznego a mianowicie w pliku etc/rc.d/rc.local musisz wpisac :

Kod: Zaznacz cały

echo 1 > /proc/sys/net/ipv4/ip_dynaddr
to nam mówi ze dostajemy adres z dhcp
aby udostepnic internet sieci lokalnej nalezy w pliku
etc/rc.d/rc.local wpiasc:

Kod: Zaznacz cały

echo 1 > /proc/sys/net/ipv4/ip_dynaddr
echo 1 > /proc/sys/net/ipv4/ip_forward 
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
ostatnia linijka to wlacznie mastarady na eth0. nastepnie powinienes na kazdym z kompów wpiasc adres alezacy do tej samej sieci co podałes w /etc/rc.d/rc.inet1 (konfigurjac interfejs). a jako brame to pewnie wiesz. jakby cos nie działało to daj znac

Reder
Użytkownik
Posty: 136
Rejestracja: 2004-11-30, 10:52
Lokalizacja: /root
Kontakt:

Utrudniacie sobie zycie Panowie

Post autor: Reder »

Czy nie prosciej i szybciej bylo by uzyc standardowego ustawienia ktore znajduje sie w rc.modules?Do tego zmienic jeden drobiazg w rc.inet1.conf?Ogolnie zecz biorac sprawa wygladala by tak i zajela zancznie mniej czasu - no i chodzila na 100% - tak bynajmniej mi sie wydaje - zecz jasna moge sie mylic - ale u mnie bynajmniej to dziala i to dobrze.

Tworzymy sobie plik w /etc/rc.d np. rc.maskarada

wrzycamy do niego to co znajduje sie w rc.modules:

Kod: Zaznacz cały

#!/bin/sh
#--------------------TEN PLIK ODPOWIADA ZA KONFIGURACJE NAT ORAZ FIREWALL-----------------------------------------------------
#Interfejsy sieciowe odpowiedzialne za routing
EXTERNAL=eth1
INTERNAL=eth0  
#Komunikaty wyswietlane podczas uruchamiania
echo 1 > /proc/sys/net/ipv4/ip_forward
echo "WLANCZAM NAT"
#Domyslnie nic nie jest przepuszczane
iptables -P FORWARD DROP
#Zezwalaj na wszystkie polaczenia wychodzace
iptables -A FORWARD -i $EXTERNAL -o $INTERNAL -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i $INTERNAL -o $EXTERNAL -j ACCEPT
#Blokowanie przychodzacych pingow
iptables -A INPUT -i eth0 -p icmp --icmp-type echo-request -j DROP
#Wlanczanie maskarady
iptables -t nat -A POSTROUTING -o $EXTERNAL -j MASQUERADE
Gdzie INTERNAL to siec lokalna ( u ciebie w domu ), a external to karta sieciowa z dynamicznym IP.

I to bylo by na tyle jesli chodzi o plik rc.maskarada.

Przejdzmy wiec do kolejnego juz istniejacego rc.inet1.conf

Odnajdujemy tu eth z dynamicznym IP i w miejscu:

Kod: Zaznacz cały

USE_DHCP[tu numer eth]=""
wpiujemy tylko slowo yes w cudzyslowie tak aby mialo to postac:

Kod: Zaznacz cały

USE_DHCP[tu numer eth]="yes" 
Nalezy przy tym pmietac aby przy karcie z dynamicznym IP usunac wszystkie stale numery IP oraz maske.

Zeby wszystko chodzilo ok wypadalo by na dole tego pliku dopisac jeszcze:

Kod: Zaznacz cały

GATEWAY="tu numer IP bramy - routera,AP czy czego tam potrzeba-co jest nasza brama w danym przypadku"
Zapisujemy zmiany.

Zeby wszystko chodzilo i uruchamialo sie automatycznie przy starcie nalezy dodac jeszcze wpis do /etc/rc.d/rc.local ktory wyglada tak:

Kod: Zaznacz cały

/etc/rc.d/rc.maskarada
I na koniec jeszcze jedno - aby korzystac z iptables w sposob prawidlowy przydalo by sie aby w rc.modules w sekcji "Special modules for iptables" byly odhaschowane wszystkie linijki od 686 do 710, i pamietajmy zeby przypadkiem przez pomylke nie odhaschowac linijek z modulami dla ipchains - no chyba ze postanowimy korzystac wlasnie z ipchainsa...ale to juz inna bajka.

W opisanym tu przypadku maskarada obsluguje NAT dla kazdego komputera w naszej sieci lokalne - bez wzgledu na jego IP czy MAC.

Aby mozna bylo korzystac z netu na klientach - nalezy jeszcze dopisac w ustawieniach TCP/IP sekcji DNS nasza brame ( tyle tylko ze nie wpisujemy jej jako brame poniewarz brama pozostaje nasz server z maskarada, lecz wpisujemy ja jako pierwszy lub drugi DNS )
"...Jestem dyspozytorem własnych torów, spełniam się w muzyce hardcoru..." cyt. Magik

ODPOWIEDZ