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!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Witam.
Chciałym zrobić cos takiego :
Pewna grupa ludzi dostaje ip po macu z dhcp, a osoby które nie są dopisane do dhcp po macu zeby dostawali ip z zupelnie innej klasy adresowej i po wejsciu na dowolną stronę dostawali informacje ze np "nie są dopisani do sieci"
Jak to wykonać za pomocą konfiguracji dhcp?
Offline
DHCP:
shared-network KLIENCI { subnet 192.168.2.0 netmask 255.255.255.0 { default-lease-time 86400; max-lease-time 86400; option routers 192.168.2.1; option domain-name-servers 192.168.2.1; host KLIENT { hardware ethernet 00:11:22:22:33:33; fixed-address 192.168.2.10; } } } shared-network POZOSTALI { subnet 10.0.0.0 netmask 255.255.255.0 { default-lease-time 86400; max-lease-time 86400; option routers 10.0.0.1; option domain-name-servers 10.0.0.1; range 10.0.0.10 10.0.0.100; } }
Taka konfiguracja zrobi że osoby które masz dopisane dostaną poprawny adres IP, natomiast pozostali otrzymają adres 10.0.0.*
Za pomocą firewalla przekieruj ruch z portu 80 podsieci 10.0.0.0 na virtualhost z apache w którym będziesz miał stronę z informacją na dowolnym porcie.
Wszystkie pozostałe porty zablokuj.
Przy uruchamianiu komunikatu możesz wesprzeć się artykułem z Matczynej strony
[url]http://dug.net.pl/faq/faq-3-42-zablokowanie_internetu_+_przekierowanie.php[/url]
Offline
dajesz w dhcpd.conf :
range 192.168.0.100 - 192.168.0.240 subnet 192.168.0.0 netmask 255.255.255.0 { option domain-name-servers 194.204.159.1 , 194.204.152.34; option routers 192.168.0.1; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; } host admin { hardware ethernet 00:06:8C:12:34:56; fixed-address 192.168.0.2; }
userzy którzy dostają IP z DHCP bez wpisanego MAC adresu dostają adresy z puli 192.168.0.100 - 192.168.0.240
reszta to przekierowania w iptables oraz jakaś stronka np w apache na portcie 88
Offline
...o to mi chodziło, dzięki :)
Offline
Gdybys wpisał "man dhcpd.conf" znalazlbys dokladnie przyklad omawiajacy ow problem a nawet wiecej. Ale nie po co sie meczyc....
Pozostaje problem w jakiej klasie adresowej więc pracuje router :P :>
Po drugie w DHCP nie skonfigurujesz wyswieltania komus strony, a w miare rozsadnym rozwiazaniem bedzie uzycie serwera proxy do tego.
Gryzon, przyznam iż schludny i czysty konfig. Ale patrząc po klasach to jest to siec z dwoma routerami/jednym routerem z kilkoma interfejsami sieciowymi :)
Offline
Witam
chciałem zrobić coś podobnego jak w tym temacie
zrobiłem wpis w dhcpd.conf
i przydziela adresy tylko z pierwszej klasy adresowej
to pomyślałem o zrobieniu interfejsu virtualnego ale to też nic nie dało...
ma ktoś jakiś pomysł co trzeba jeszcze dopisać i gdzie żeby zaskoczyło ?
Offline
No i jednak już po sprawie :)
u mnie wystarczyło zrobić to na zasadzie:
shared-network sharedname {
subnet 10.0.0.0 netmask 255.0.0.0 {
range 10.0.5.170 10.0.5.190;
option broadcast-address 10.255.255.255;
option routers 10.0.5.1;
}
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.170 192.168.1.190;
option broadcast-address 192.168.1.255;
option routers 192.168.1.1;
}
}
Ostatnio edytowany przez milo-23 (2010-06-24 04:58:25)
Offline
Pamiętaj, że jak ktoś sobie wpisze ręcznie adres ip to będzie miał dostęp do netu. Także, jeżeli to ma służyć zabezpieczeniu tego, aby tylko określone osoby miały wyjście na świat to dawaj im dostęp w iptables indywidualnie po macu, a nie bazując na samym adresie podsieci.
Ostatnio edytowany przez johny (2010-06-24 19:55:05)
Offline
[quote=johny]Pamiętaj, że jak ktoś sobie wpisze ręcznie adres ip to będzie miał dostęp do netu. Także, jeżeli to ma służyć zabezpieczeniu tego, aby tylko określone osoby miały wyjście na świat to dawaj im dostęp w iptables indywidualnie po macu, a nie bazując na adresie podsieci.[/quote]
Można dodawać wpisy tego typu do dhcp, po co zaśmiecać iptables:
host V2171 { hardware ethernet 00:0f:ea:54:ef:91; fixed−address 192.168.1.171 ; host V2172 { hardware ethernet 00:0f:ea:54:ef:11; fixed−address 192.168.1.172; itd.. }
Offline
[quote=skotx][quote=johny]Pamiętaj, że jak ktoś sobie wpisze ręcznie adres ip to będzie miał dostęp do netu. Także, jeżeli to ma służyć zabezpieczeniu tego, aby tylko określone osoby miały wyjście na świat to dawaj im dostęp w iptables indywidualnie po macu, a nie bazując na adresie podsieci.[/quote]
Można dodawać wpisy tego typu do dhcp, po co zaśmiecać iptables:
host V2171 { hardware ethernet 00:0f:ea:54:ef:91; fixed−address 192.168.1.171 ; host V2172 { hardware ethernet 00:0f:ea:54:ef:11; fixed−address 192.168.1.172; itd.. }
[/quote]
Ale jeśli zrobisz taki wpis w dhcp a nie ruszysz iptables, to dalej użytkownik może na sztywno ustawić sobie adres IP i będzie miał dostęp do neta
Offline
Time (s) | Query |
---|---|
0.00010 | SET CHARSET latin2 |
0.00005 | SET NAMES latin2 |
0.00123 | 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='18.118.30.137' WHERE u.id=1 |
0.00089 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.118.30.137', 1732597933) |
0.00041 | SELECT * FROM punbb_online WHERE logged<1732597633 |
0.00049 | SELECT topic_id FROM punbb_posts WHERE id=71169 |
0.00004 | SELECT id FROM punbb_posts WHERE topic_id=9183 ORDER BY posted |
0.00028 | 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=9183 AND t.moved_to IS NULL |
0.00025 | SELECT search_for, replace_with FROM punbb_censoring |
0.00210 | 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=9183 ORDER BY p.id LIMIT 0,25 |
0.00082 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=9183 |
Total query time: 0.00666 s |