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  2011-05-07 15:19:48

  marian-jones - Nowy użytkownik

marian-jones
Nowy użytkownik
Zarejestrowany: 2011-05-07

iptables - 3 karty sieciowe, 2 jako swich, 1 jako wejście do Neta

Witam,
Dostępne mam 3 interfejsy
eth0, eth1 i eth3

do eth0 podłączony jestem do neta.
eth1 jest dotychczasowa karta przez który rozdzielany jest net
LAN -> eth1 ->  Debian  -> eth0 -> INTERNET
                   /\dhcp-server          /\ dhcp-client
Normalny nat.

CEL:
To co chce zrobić to podłączyć kartę eth3 by pracowała jako jedno fizyczne wejście w tej samej podsieci co eth1.
Jednym słowem jak 2 portowy "swich".

czyli tak
            \/ podsieć 192.168.1.0
LAN -> eth1 ->  Debian  -> eth0 -> INTERNET
LAN -> eth3 ->
            /\ podsieć 192.168.1.0
(Owszem wiem że mogę kupić swich i rozdzielać internet po podłączeniu do eth1.)


Jaką mam do tej pory konfiguracje dla 2 kart eth0 i eth1.

/etc/network/interfaces

Kod:

## /etc/network/interfaces

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0 eth1

auto eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet static
        address 192.168.1.1
        netmask 255.255.255.0

oraz

Kod:

iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE
iptables -A FORWARD -s 192.168.1.0/24 -j ACCEPT

Taka konfiguracja załatwiała do tej pory  sprawę dla neta dla w sieci wewnętrznej.

DYGRESJA:
Wiem (albo tak mi się wydaje) nie bardzo można uzyskać takiego rzeczywistego switch'q (bo to wymagałoby
albo rozdzielenia pinów i spadku prędkości halfdupleksu albo jeszcze nie wiadomo czego) co sprowadza się do fizycznego swicha.

Ponieważ skonfigurowałem sobie 2 routery w tej samej podsieci (odpowiednio podłącza się lan'owe wejścia) tak ze jeden adres 192.168.1.1 drugi 192.168.1.2
oby dwa pokrywają w skrajnych końcach mieszkania sygnałem WiFi. Wszystko w jednej podsieci na WiFi i Ethernet.
Tak wiec wiem ze to co chce uzyskać jest możliwe.

CO DO TEJ PORY:

Kod:

## /etc/network/interfaces

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0 eth1 eth3

auto eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet static
        address 192.168.1.1
        netmask 255.255.255.0

auto eth3
iface eth3 inet static
        address 192.168.1.2
        netmask 255.255.255.0

PROBLEM:
Nie wydaje mi sie żeby tablica routowania wymagała jakiś zmian no ale prawdopodobnie czegoś nie widzę.
Problem jest w tym ze jeżeli podłącze kompa pod druga kartę sieciową (eth3) nadam mu IP z podsieci np 192.168.1.15
to nie mogę pingować interfejsu 192.168.1.2.
Jeżeli pinguje z DEBIANA i 192.168.1.1 i 192.168.1.2 wszystko jest ok. no ale ping na 192.168.1.15 nie dociera.
Byc moze dlatego ze icmp nie dociera...

Dlatego sprawdziłem czy jest ogólnie jakiś ruch wireshark 'iem,
Pingowałem z kompa podłączonego do eth3 i tak widać ruch ARP.
Jest odpowiedz jaki jaki mac jest dla karty.

Jestem nowicjuszem jeżeli chodzi o iptables.
A problem jest prawdopodobnie z routowaniem.
Jeżeli tak to dlaczego dochodzą pingi z eth1 a z eth3 już nie jeżeli są zdefiniowane w tej samej podsieci.
A może jeszcze to jest sprawa poza routingiem..

Mam nadzieje ze może komuś chciało się tu dotrzeć :),
Proszę na odp.

Offline

 

#2  2011-05-07 17:59:27

  bobycob - Członek z Ramienia

bobycob
Członek z Ramienia
Skąd: Wrocław
Zarejestrowany: 2007-08-15

Re: iptables - 3 karty sieciowe, 2 jako swich, 1 jako wejście do Neta

W ten sposób tego nie zrobisz.
Pomijając sens takiej konfiguracji - albo raczej całkowity brak. Odpowiedź na zapytanie ping 192.168.0.2 jest wysyłana ale z użyciem eth2 więc nie może zostać odebrana przez komputer podłączony do eth3.. Co możesz potwierdzić doświadczalnie. Jeżeli chcesz mieć dwie karty pracujące w jednej podsieci IP równocześnie będziesz potrzebował przęłącznik zarządzalny z obsługą agregacji portów. W linuksie jest takie "coś" jak bonding.
Nigdy tego nie używałem - jednak do realizacji takich pomysłów to służyć powinno.

Wyobraź sobie zapytanie arp o adres 192.168.0.15/24. SIeć o tym zakresie jest na dwóch interfejsach. Komputer nie wiedząc na którym jest osiągalny ten adres powinien pytać na obu? A co z odpowiedzią usłyszą ją oba interfejsy - zakładam, że do pełni szczęścia podpinasz je do jednej sieci ethernet.

Natomiast  jeśli chcesz zrobić z nich switch - tu się da.
Dodajesz bridge do niego wpinasz karty sieciowe eth2 i eth3, adres IP przypisujesz wtedy do interfesu bridge. Adres przykładadow 192.168.0.1/24 jest wtedy osiągalny na obu portach. Oczywiście nie ryzykuj nawet podłączenia tak skonfigurowanych kart do tego samego przełącznika niezarządzalnego.

Ostatnio edytowany przez bobycob (2011-05-07 18:03:11)

Offline

 

#3  2011-05-10 09:13:10

  ba10 - Członek DUG

ba10
Członek DUG
Skąd: jesteś ?
Zarejestrowany: 2006-03-07
Serwis

Re: iptables - 3 karty sieciowe, 2 jako swich, 1 jako wejście do Neta

Tak jak bobycob napisał zmostkuj sobie interfejsy, W repozytoriach znajdziesz pakiet bridge-utils i dzięki narzędziu brctl tworzysz mostek i dopisujesz do niego karty sieciowe.

Ostatnio edytowany przez ba10 (2011-05-10 09:14:13)


"Jeżeli chcesz się nauczyć Linuksa, to pierwsze co musisz zrobić to odrzucić wszelkie przyzwyczajenia wyniesione z poprzedniego systemu. Twoja wiedza jest o tyle zgubna, że daje Ci poczucie że coś jednak wiesz — jednak w kontekście Linuksa prawdopodobnie nie wiesz jeszcze nic." Minio
Mój [url=jarekw.eu]Blog[/url], a później [url=tanczymy.com]Tańczymy[/url] ;)

Offline

 

#4  2011-05-10 10:23:37

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: iptables - 3 karty sieciowe, 2 jako swich, 1 jako wejście do Neta

Tak to może działać, tylko trzeba zrobić routing między podsieciami.
Zainteresuj się poleceniem [b]route[/b] (instrukcja pod [b]man route[/b]), - w manie masz gotowe przykłady.

Bo brak komunikacji między podsieciami to najprawdopodobniej sprawa routingu lub firewalla.

To by bylo na tyle
;-)

Ostatnio edytowany przez Jacekalex (2011-05-10 10:26:49)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#5  2011-05-10 11:40:17

  kuchar - Użytkownik

kuchar
Użytkownik
Skąd: Warszawa
Zarejestrowany: 2005-11-16
Serwis

Re: iptables - 3 karty sieciowe, 2 jako swich, 1 jako wejście do Neta

Tylko jak zrobisz bridge to uważaj, żeby te dwie karty nie były zapięte do jednego switcha, albo do dwóch, które są ze sobą spięte, bo zapnie się pętla i nic nie będzie działać.


Linux Registered User # 406343

[i]Routing protocols enable routers to route routed protocols[/i] :)

Offline

 

#6  2011-05-10 16:46:31

  bobycob - Członek z Ramienia

bobycob
Członek z Ramienia
Skąd: Wrocław
Zarejestrowany: 2007-08-15

Re: iptables - 3 karty sieciowe, 2 jako swich, 1 jako wejście do Neta

jacekalex albo ja coś źle rozumiem albo on próbuje robić coś jak routing między tymi samymi podsieciami.

auto eth1
iface eth1 inet static
        address 192.168.1.1
        netmask 255.255.255.0

auto eth3
iface eth3 inet static
        address 192.168.1.2
        netmask 255.255.255.0

jak wspomniałem nie rozumiem celu takiej konfiguracji, jednak jak sądzę rozumiem dlaczego nie ma prawa działać poprawnie.
Jeśli Twoim zdaniem może to podziel się proszę wiedzą i napisz jak.

Ostatnio edytowany przez bobycob (2011-05-10 16:47:14)

Offline

 

#7  2011-05-10 20:54:36

  Jacekalex - Podobno człowiek...;)

Jacekalex
Podobno człowiek...;)
Skąd: /dev/urandom
Zarejestrowany: 2008-01-07

Re: iptables - 3 karty sieciowe, 2 jako swich, 1 jako wejście do Neta

Faktycznie, tego nie zauważyłem. - moja ślepota :D
Eth1 i eth3 mają adres z tej samej podsieci....
Wystarczy zmienić eth3 np na 192.168.2.1/24, ustawić routing i powinno ruszyć.

Ogólnie, żeby konfigurować sieć, potrzebna jest choćby podstawowa wiedza na temat adresów IP, ale tego uczą  w każdym technikum.
I np tutaj też jest opis: http://pl.wikipedia.org/wiki/IPv4

To by bylo na tyle
;-)

Ostatnio edytowany przez Jacekalex (2011-05-10 22:34:22)


W demokracji każdy naród ma taką władzę, na jaką zasługuje ;)
Si vis pacem  para bellum  ;)       |       Pozdrawiam :)

Offline

 

#8  2011-05-10 22:17:40

  bobycob - Członek z Ramienia

bobycob
Członek z Ramienia
Skąd: Wrocław
Zarejestrowany: 2007-08-15

Re: iptables - 3 karty sieciowe, 2 jako swich, 1 jako wejście do Neta

i to święte słowa za nikogo nie nauczymy się podstaw

Offline

 

#9  2011-05-17 23:19:51

  marian-jones - Nowy użytkownik

marian-jones
Nowy użytkownik
Zarejestrowany: 2011-05-07

Re: iptables - 3 karty sieciowe, 2 jako swich, 1 jako wejście do Neta

Wielkie dzięki bobycob, Twoje pierwsze info już mnie nakierowało.
Dla brnących ta samą drogą napisze jednak co i jak.

Dość późno odpisuje, ale służy służy mi on jako serwer w akademiku (bobycob z Wroc więc pewnie wie o jakie chodzi :)
Do mam dostęp do niego co jakiś czas.

A jeżeli chodzi o cel to mam 3 karty sieciowe a nie mam swicha. (wiem ze nie jest to drogi interes ale jak jest karta to po co mi swich - poza tym wiem teraz coś nowego)
Założyłem, że druga służyć będzie jako jeden port więcej dla drugiego kompa w lanie.
Chciałem żeby były w jednej podsieci - w różnych to nie był to żaden problem. 

Wystarczyło mi żeby były zmostkowane, nie potrzebowałem żeby druga karta miała konkretnie adres w podsieci.
No ale byłoby interesujące zobaczyć taka konfiguracje. I po to bounding dla odróżnienia od mostkowania.

Zmieniłem podsieć, aby nie nachodziły z domyślnymi w routerach 192.168.0.0/24 i 192.168.1.0/24  (przez wifi).

Zainstalowałem co potrzebne do mostkowania. No i potem taka konfiguracja

Kod:

## /etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug eth0 

auto eth0
iface eth0 inet dhcp

auto jbr
iface jbr inet static
  address 192.168.2.1
  netmask 255.255.255.0
  network 192.168.2.0
  broadcast 192.168.2.255
 # gateway 192.168.2.1

  pre-up ifconfig eth1 down
  pre-up ifconfig eth3 down
  pre-up ifconfig eth1 0.0.0.0
  pre-up ifconfig eth3 0.0.0.0
  pre-up brctl addbr jbr
  pre-up brctl addif jbr eth1
  pre-up brctl addif jbr eth3
  pre-up ifconfig eth1 up
  pre-up ifconfig eth3 up

  post-down ifconfig eth1 down
  post-down ifconfig eth3 down
  post-down brctl delif jbr eth1

routing.

Kod:

iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j MASQUERADE
iptables -A FORWARD -s 192.168.2.0/24 -j ACCEPT

oraz wpis dla server'a dhcp

Kod:

 
# /etc/dhcp3/dhcpd.conf
#standard configuration
subnet 192.168.2.0 netmask 255.255.255.0 {
 interface "jbr";
 range 192.168.2.3 192.168.2.254;
 option routers 192.168.2.1;
 option domain-name "marian-jones.pl";
 option broadcast-address 192.168.2.255;
 option domain-name-servers 156.17.229.226, 156.17.229.89, 156.17.5.2;
 default-lease-time 600;
 max-lease-time 7200;
}

Generalnie się nie pinguje w wewnętrznej sieci. Prawdopodobnie wystarcz dostawić odpowiedni routing icmp (albo po prostu podłączone kompy maja celowo wyłączone odpowiadanie na pingi)

Nie wiem z jakiego powodu ale stary (bardzo stary lapek della podłączony do eth3 nie łapie neta zaś gdy jest podłączony do eth1 wszystko bangla).
Sprawa jest o tyle dziwna ze nowy lapek z karta nowa kartą sieciowa bangla na jednym i drugim (eth1, eth3).
Aha, Dla starej karty sieciowej kabel jest krosowany. (jak jest chociaż jedna nowa karta to sobie już poradzi z krosowaniem).

Z góry sorry za bujdy które mogłem napisać, ale mam nadzieje zostanę poprawiony tam gdzie trzeba.

Pozdrawiam.

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
To nie jest tylko forum, to nasza mała ojczyzna ;-)

[ Generated in 0.015 seconds, 14 queries executed ]

Informacje debugowania

Time (s) Query
0.00015 SET CHARSET latin2
0.00008 SET NAMES latin2
0.00133 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.222.239.77' WHERE u.id=1
0.00079 REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.222.239.77', 1714857456)
0.00053 SELECT * FROM punbb_online WHERE logged<1714857156
0.00083 DELETE FROM punbb_online WHERE ident='18.226.28.197'
0.00085 DELETE FROM punbb_online WHERE ident='54.36.148.36'
0.00068 DELETE FROM punbb_online WHERE ident='54.36.149.105'
0.00081 SELECT topic_id FROM punbb_posts WHERE id=173375
0.00240 SELECT id FROM punbb_posts WHERE topic_id=18927 ORDER BY posted
0.00107 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=18927 AND t.moved_to IS NULL
0.00005 SELECT search_for, replace_with FROM punbb_censoring
0.00130 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=18927 ORDER BY p.id LIMIT 0,25
0.00109 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=18927
Total query time: 0.01196 s