martian source
: 04 czerwca 2015, 23:46
Podczas konfiguracji nowego serwera (Debian Wheezy x64) natknąłem się na problem, którego nie mogę rozwiązać.
Serwer posiada dwa interfejsy sieciowe eth0 - Wan (pobiera adres ip od dostawcy internetu), eth1 - Lan (adres statyczny 192.168.14.1/16). Serwer ma pełnić rolę m.in. routera więc skonfigurowałem dhcp oraz udostępnianie internetu dla poszczególnych komputerów w sieci. Robię to za pomocą takich wpisów w zaporze:
I do tego momentu wszystko działa jak należy (serwer dhcp przyznaje adresy filtrując je po mac adresach, zapora udostępnia internet w/w adresom ip, pod warunkiem, że posiadają właściwy mac adres).
Jako, że w sieci przybywa urządzeń z różnych kategorii (tablety, smartfony, telewizory itp.) postanowiłem, że będę te urządzenia umieszczał w innej sieci 192.168.1.0/16 - dla lepszego rozeznania. Pomysł ten rozwiązuję w identyczny sposób jak powyżej. Serwer dhcp przydziela adres ip:
Następnie zapora zezwala na ruch z i do internetu:
I w tym momencie zaczynają się kłopoty. Serwer dhcp przyznaje adresy ip, nie mniej jednak w logach widać następujące wpisy (przykład z logu dotyczy adresu 192.168.1.3, ale z adresami 192.168.1.1-2 jest podobnie):
W konsekwencji urządzenia otrzymujące adresy ip z sieci 192.168.1.0/16 nie dostają internetu.
Od czego zacząć, aby wyeliminować ten problem?
Serwer posiada dwa interfejsy sieciowe eth0 - Wan (pobiera adres ip od dostawcy internetu), eth1 - Lan (adres statyczny 192.168.14.1/16). Serwer ma pełnić rolę m.in. routera więc skonfigurowałem dhcp oraz udostępnianie internetu dla poszczególnych komputerów w sieci. Robię to za pomocą takich wpisów w zaporze:
Kod: Zaznacz cały
iptables -t nat -A POSTROUTING -s 192.168.14.2/32 -j MASQUERADE
iptables -A FORWARD -s 192.168.14.2/32 -m mac --mac-source XX:XX:XX:XX:XX:XX -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.14.3/32 -j MASQUERADE
iptables -A FORWARD -s 192.168.14.3/32 -m mac --mac-source XY:XY:XY:XY:XY:XY -j ACCEPT
Jako, że w sieci przybywa urządzeń z różnych kategorii (tablety, smartfony, telewizory itp.) postanowiłem, że będę te urządzenia umieszczał w innej sieci 192.168.1.0/16 - dla lepszego rozeznania. Pomysł ten rozwiązuję w identyczny sposób jak powyżej. Serwer dhcp przydziela adres ip:
Kod: Zaznacz cały
host test01 {
hardware ethernet 10:A5 :D:12:87:32;
fixed-address 192.168.1.1;
option broadcast-address 192.168.255.255;
option routers 192.168.14.1;
}
host test02 {
hardware ethernet 10:F9:EE:12:34:82;
fixed-address 192.168.1.2;
option broadcast-address 192.168.255.255;
option routers 192.168.14.1;
}
Kod: Zaznacz cały
iptables -t nat -A POSTROUTING -s 192.168.1.1/32 -j MASQUERADE
iptables -A FORWARD -s 192.168.1.1/32 -m mac --mac-source 10:A5 :D:12:87:32 -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.1.2/32 -j MASQUERADE
iptables -A FORWARD -s 192.168.1.2/32 -m mac --mac-source 10:F9:EE:12:34:82 -j ACCEPT
Kod: Zaznacz cały
martian source 192.168.14.1 from 192.168.1.3, on dev eth1
ll header: ff:ff:ff:ff:ff:ff:db:f3:5b:35:32:30:08:06
martian source 192.168.14.1 from 192.168.1.3, on dev eth1
ll header: ff:ff:ff:ff:ff:ff:db:f3:5b:35:32:30:08:06
martian source 192.168.14.1 from 192.168.1.3, on dev eth1
ll header: ff:ff:ff:ff:ff:ff:db:f3:5b:35:32:30:08:06
martian source 192.168.1.3 from 192.168.1.3, on dev eth1
Od czego zacząć, aby wyeliminować ten problem?