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  2015-06-04 23:41:45

  Luc3k - Użytkownik

Luc3k
Użytkownik
Zarejestrowany: 2009-10-09
Serwis

martian source i brak dostępu do internetu

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), eth0 - 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:

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

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:

Kod:

host test01 {
hardware ethernet 10:A5:D0: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;
}

Następnie zapora zezwala na ruch z i do internetu:

Kod:

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:D0: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

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):

Kod:

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

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?

Ostatnio edytowany przez Luc3k (2015-06-04 23:48:13)

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)

[ Generated in 0.010 seconds, 14 queries executed ]

Informacje debugowania

Time (s) Query
0.00009 SET CHARSET latin2
0.00004 SET NAMES latin2
0.00094 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.144.86.38' WHERE u.id=1
0.00081 UPDATE punbb_online SET logged=1732779841 WHERE ident='3.144.86.38'
0.00072 SELECT * FROM punbb_online WHERE logged<1732779541
0.00076 DELETE FROM punbb_online WHERE ident='3.14.249.124'
0.00072 DELETE FROM punbb_online WHERE ident='54.36.148.148'
0.00077 DELETE FROM punbb_online WHERE ident='57.141.0.8'
0.00094 SELECT topic_id FROM punbb_posts WHERE id=287843
0.00073 SELECT id FROM punbb_posts WHERE topic_id=27463 ORDER BY posted
0.00061 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=27463 AND t.moved_to IS NULL
0.00010 SELECT search_for, replace_with FROM punbb_censoring
0.00069 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=27463 ORDER BY p.id LIMIT 0,25
0.00083 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=27463
Total query time: 0.00875 s