Pomysł jest dość prosty. Raspberry Pi (debian) będzie odbierać sygnał WiFi i przekazywać internet dalej przez router, który stworzy kolejną sieć WiFi. Ważne jest, aby Raspberry był widoczny w sieci. W planach jest mały serwer Samba, sieciowa karta dźwiękowa i pobieraczka do torrentów.
Proszę o pomoc w konfiguracji całego sprzętu - nie mam bladego pojęcia jak się za to zabrać. Dzięki
EDIT:
Mam na razie bardziej sprecyzowany problem. Raspberry jest podłączony do sieci WiFi (1), która ma dostęp do internetu, oraz do routera (2) w celu komunikacji przez ssh. Pingi działają po stronie routera z ssh (2) i po stronie sieci WiFi (1), ale nie odpowiada nic co jest poza routerem z internetem (1). Tzn. np. 192.168.0.105 odpowiada - to mój komputer - ale 8.8.8.8 już nie odpowiada. Myślę, że problemem może być to, że Debian stara się łączyć z internetem przez sieć (2) zamiast przez sieć (1). Macie pomysł jak to obejść?
Jeśli problem rzeczywiście jest taki jak mówisz to ustaw bramę domyślną w debianie na adres routera (czy co tam stoi), który rozgłasza sieć WiFi(1). Czyli pewnie ta sama brama co masz w swoim komputerze.
Na Debianie masz włączone przekazywanie pakietów? Debian musi robić za router w tym przypadku, bo masz dwie sieci/podsieci. Pokaż wyniki poniższych poleceń z Debiana.
cat /proc/sys/net/ipv4/ip_forward
su -c "iptables -L"
su -c iptables-save
ifconfig -a
route -n
i ją odkomentuj, tzn. usuń tę kratkę na samym początku. Uruchom ponownie system i sprawdź czy masz łączność ze wszystkimi sieciami, jeśli nie, zajmiemy się konfiguracją zapory sieciowej.
OK, działa. Z raspberry wracają pingi ze wszystkich sieci i z internetu.
Teraz kolejny krok to przekazanie internetu z sieci 1 do sieci 2, jednak w taki sposób, aby raspberry był nadal widoczny w sieci. Tzn. zamiast komputera z ssh, do sieci 2 będą podłączone komputery, w których chciałbym mieć internet. Najlepiej z dynamicznymi IP (DHCP). Jak to zrobić?
W sumie to bez różnicy… Ważne, że debian ma tylko jedną katrę sieciową, a oprócz udostępniania internetu ma być z każdej strony dostępny przez ssh itd.
Jakie są za i przeciw? Dla mnie raczej obojętne, chociaż lepiej żeby sieć dalej działała gdyby Raspberry wysiadł.
Rozumiem, że w LAN2 nie masz wyjścia do internetu? Stwórz nowy plik,
su -c 'nano /etc/init.d/firewall'
i wklej do niego takie regułu dla IPTables
#!/bin/sh
# Poniższe reguły odpowiadają za czyszczenie starych reguł
iptables -F
iptables -X
iptables -t nat -X
iptables -t nat -F
# Polityka bezpieczeństwa, można ją zmienić na bokowanie ruchu sieciowego (zalecam)
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
# Reguły pętli zwrotnej
iptables -A INPUT -i lo -j ACCEPT
iptables -A FORWARD -o lo -j ACCEPT
# Reguły odpowiadające za udostępnianie połączenia
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
iptables -A FORWARD -s 192.168.0.0/24 -j ACCEPT
Reguły podałem w oparciu o adresację skonfigurowaną na Debianie. Teraz należy dodać skrypt z regułami do skryptów startowych, aby reguły były wczytywane podczas startu systemu.
su -c 'update-rc.d firewall defaults 90'
Żeby załadować nowe reguły bez ponownego uruchamiania systemu, wystarczy wykonać poniższe polecenie.
Tak w LAN 2 nie ma wyjścia do internetu. Do internetu podłączony jest tylko router wifi 1. Raspberry ma przekazywać internet.
Po wykonaniu poleceń, które podałeś, nadal nie ma internetu w sieci LAN 2. Może trzeba jeszcze skonfigurować router lub komputery, które mają łączyć się z internetem?
Tak musiałem chwilę rozwikłać ten twój schemat, żeby się w nim połapać i wynika z tego, że masz ustawioną złą trasę domyślną. Trasa domyślna powinna wychodzić przez 192.168.0.x, interfejsem wyjściowym w tym przypadku będzie wlan0, ewentualnie możesz ustalić trasę statyczną do tej sieci. Teraz wynika z tego, że to co komputer z LAN2 chce wysłać do internetu jest odsyłane z powrotem do sieci LAN2.
Na wszelki wypadek podaj dokładną adresację i jeśli możesz, wykonaj schemat sieci wraz z opisem lub jak masz ochotę, możesz zrobić taki schemat w programie Network Notepad lub innym
No ten schemat to mówi już coś konkretnego Czyli tak naprawdę masz 3 sieci (pomijam sieć WAN ISP) i 3 routery (nie za dużo trochę jak na tak małą sieć?), więc brakuje Ci jednej sieci. Moim zdaniem powinno to być zrobione tak:
[*:108m71pv] Router1
[*:108m71pv] Raspberry Pi
Wlan0 - 192.168.0.0/24
[*:108m71pv] Router2
- WAN - 192.168.1.0/24
Czyli tak to powinno wyglądać (nie zwracaj uwagi na kolory obrazujące diody, schemat robiłem akurat w symulatorze sieci).
Skonfiguruj na nowo Router2 i Debiana, następnie pokaż nową tablicę routingu. Ewentualnie, jeśli nie chcesz mieć tylu sieci, niech jedno z urządzeń robi za przełącznik. Jeśli chcesz mieć Debiana i LAN2 w jednej sieci, to Router2 powinien robić za przełącznik. Jeśli Router2 już robi za przełącznik, to w tablicy routingu Debiana musisz zmienić trasę domyślną o czym pisałem wcześniej, ale jeśli skonfigurujesz 3 sieci w taki sposób w jaki tu opisałem, Debian powinien być osiągalny z każdej sieci.
Chodziło mi o opisanie jakie urządzenia jakie mają adresy, ale nowy schemat mówi już wszystko
Dzięki za wskazówki! Poczytam jakieś tutki w internecie, spróbuję coś zrobić i napiszę jak postępy. Znasz jakieś dobre tutoriale na temat zarządzania siecią? To co znalazłem w googlach takie trochę niejasne.
3 routery to rzeczywiście trochę za dużo. Wszystko dlatego, że korzystam ze sprzętu, który leżał nieużywany. Po prostu sieć 1 nie działała w całym moim pokoju (brak zasięgu), a przy okazji na Rapsberry (który może chodzić 24 godziny na dobę) postawię sobie sambę, ściągarkę do torrentów itd.
Dlatego Router2 może robić za przełącznik, Debian też mógłby być mostem, ale z routerem nie ma praktycznie żadnej zabawy i przy okazji masz serwer DHCP dla drugiej podsieci.