Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
Ta instrukcja jest dość długa i skomplikowana. Istnieje kilka projektów połączonych w jeden, aby dać mi przenośne laboratorium testowania sieci, które pozwala mi diagnozować problemy z siecią, pakiety rekinów z sieci przewodowych i bezprzewodowych, testować kable krosowe i pomagać w mapowaniu portów ściennych do paneli krosowych.
Projekt wykorzystuje połączenie Raspberry Pi i Arduino. Jest prawdopodobne, że wszystko można było zrobić z Pi, ale jestem w tym dość nowy i każdy z wprowadzonych przeze mnie dodatków był trudnym zadaniem, więc myśl o stworzeniu kompletnego aneksu kolejnych 2 projektów była zbyt duża do zniesienia.
Mam nadzieję, że wszystkie (lub sekcje) tej instrukcji okażą się przydatne, ponieważ wierzę, że ułatwi to część sieciową mojej pracy.
Krok 1: będziesz potrzebować
Sprzęt komputerowy:
- Raspberry Pi 2 (jest to ważne, ponieważ system operacyjny nie będzie działał na Pi 3) Radionics
- Ekran, wybrałem 5-calowy ekran dotykowy Amazon
- Klawiatura i mysz, ponownie wybrałem Rii mini X1Amazon
- Amazonka Arduino Uno
- Mały przełącznik sieciowy, taki miałem na biurku Amazon
- 4 Keystones RJ45 Radionika
- Power banki USB (opcjonalnie, jeśli chcesz być przenośny)
- Niektóre kable CAT5
- Kierownik patcha sieciowego
- Karta microSD (co najmniej 4GB)
- Puszka montażowa (użyłem tego)
Oprogramowanie:
- Win32DiskImager tutaj
- System operacyjny NetPi tutaj
- Arduino IDE tutaj
Narzędzia
- Nożyce
- Zaciskarka RJ45
- Lutownica
- Narzędzie tnące (takie jak Dremel)
- Narzędzie do uderzeń
- Wkrętaki
- Podstawowe narzędzia ręczne
- Pistolet do klejenia na gorąco (opcjonalnie)
Krok 2: Analizator sieci Raspberry Pi
Nie mogę wziąć kredytu za ten system operacyjny, natknąłem się na projekt tutaj, szukając sposobu na przeprowadzenie analizy sieci za pomocą urządzenia przenośnego. Sprawdziłem dostępne na rynku urządzenia i nawet te tanie kosztowały ponad 1000 euro.
Strona została napisana, o ile wiem, w 2015 roku. Były 2 wersje systemu operacyjnego, jedna dla Pi B, a druga dla Pi 2. Wybrałem Pi 2, ponieważ po pierwsze są łatwiejsze do zdobycia, a po drugie są nieco wyższa specyfikacja. Jest uwaga, że korzystanie z systemu operacyjnego łamie funkcjonalność dotykową ekranu, ale omówię to później.
Jak powiedziałem, jestem nowy w Raspberry Pi, więc niektóre z nich mogą być dla niektórych intuicyjne, ale poprowadzę Cię przez to, co zrobiłem, aby wszystko działało.
Główną częścią jest przestrzeganie instrukcji budowania na stronie, pobranie obrazu i oprogramowania montażowego. Zamontuj obraz na karcie SD za pomocą komputera. Postępuj zgodnie z instrukcjami instalacji dla twojego ekranu, w przeciwnym razie albo się nie uruchomi i/lub nie będzie miał prawidłowej rozdzielczości. Złóż części i włącz zasilanie.
Pierwszym błędem, który pojawił się, było to, że podczas rozruchu system zatrzymał się z powodu problemu z brakiem zestawu LEDpin do podświetlenia.
To był powtarzający się błąd i po pewnym kopaniu znalazłem forum, które dało mi informację, że biblioteka fbtft nie ma funkcji podświetlenia
Dostęp do tego można uzyskać, przechodząc do wiersza poleceń (CLI), zrób to, naciskając ctrl+alt+F2
Domyślna nazwa użytkownika to: pi
Hasło: malina
Wpisz polecenie sudo nano /etc/modules
i przejdź do wiersza, który brzmi:
flexfb szerokość=320 wysokość=480 regwidth=16
po regwidth=16 wstaw słowo nobacklight
naciśnij ctrl+x
naciśnij y
naciśnij enter
następnie wpisz: sudo reboot
spowoduje to ponowne uruchomienie Pi i możesz uruchomić system operacyjny.
Ekran uruchomi się na zewnętrznym monitorze, ale nie mogłem go uruchomić na ekranie LCD
Musiałem zmienić ustawienia HDMI, aby to zrobić, wróć do CLI i wprowadź:
sudo nano /usr/share/X11/xorg.conf.d/99-fbturbo.conf
i zmień opcję /dev/fb1 na /dev/fb0
Ctrl+x
naciśnij y
naciśnij enter i uruchom ponownie
Powinieneś teraz być w systemie operacyjnym.
Ostrzeżenie na stronie rozwojowej mówiło, że ekran dotykowy nie będzie działał, ale po zainstalowaniu okablowania i poprawnych bibliotek BCM (patrz dokumentacja z twoim ekranem) wszystko działało dobrze. Rozdzielczość była jednak nieco słaba, ponieważ po obu stronach były duże czarne marginesy.
Po pewnym kopaniu znalazłem linię za pomocą
sudo nano /boot/config.txt
skomentuj sekcje bufora ramki, dodając # na początku każdej linii.
Teraz zapisz i uruchom ponownie i jesteśmy gotowi do pracy.
Ale nie, zdałem sobie sprawę, że jeśli uruchomisz komputer i nie będziesz podłączony do sieci z DHCP, Pi będzie siedzieć na ekranie rozruchowym na zawsze.
Łatwa naprawa, typ
sudo nano /etc/dhcp/dhclient.conf
Odkomentuj limit czasu DHCP, zapisz i uruchom ponownie.
Po wygaśnięciu limitu czasu bez odpowiedzi DHCP (skróciłem swoją do 30 sekund), Pi uruchomi się do systemu operacyjnego.
Teraz możemy wykonać wszystkie cudowne analizy sieci, takie jak wireshark, lldp, skanowanie sieci w poszukiwaniu otwartych portów itp. Jeśli dodałeś klucz Wifi, możesz to również zrobić w swojej sieci bezprzewodowej.
Krok 3: Zamontuj NetPi
Ponieważ NetPi ma teraz włączony ekran dotykowy, chciałem zamontować go w pokrywie pudełka, aby ekran był dostępny.
Nie chciałem, aby mój wymyślny ekran dotykowy znajdował się blisko narzędzia tnącego, więc wsadziłem go do kserokopiarki i wykonałem 100% kopię.
Pobawiłem się rozmieszczeniem ekranu, a kiedy się ułożyłem, przykleiłem go taśmą do wewnętrznej strony pokrywy.
Następnie podążałem za krawędziami za pomocą tarczy tnącej na moim Dremelu i wywierciłem otwory montażowe we właściwych miejscach.
Wyciąłem wyciętą sekcję i wstawiłem ekran. Krawędź była trochę nierówna, więc zrobiłem małą ramkę z czarną taśmą. Włączyłem zasilanie, aby upewnić się, że wszystko jest w porządku.
Krok 4: Nawiąż kilka połączeń
Jak wspomniałem we wstępie, chciałem, aby było to wielofunkcyjne narzędzie sieciowe, dlatego potrzebowałem kilku punktów połączenia.
Zdecydowałem, że najlepsze będą złącza ścienne (keystone).
Nakreśliłem zarys 4 z nich
- Połączenie dla NetPi
- Strona główna testera kabli krosowych
- Strona Slave testera kabli krosowych
- Narzędzie do mapowania paneli krosowych
Przykleiłem trochę taśmy maskującej, aby ułatwić zaznaczenie, a następnie wyciąłem za pomocą Dremela, trzeba było trochę opatrunku, ale brzegi portów zwisają, więc jest zasłonięty.
Ścianka pudełka była nieco cieńsza niż płyta ścienna, więc pasowanie było trochę niechlujne. Zajmę się tym w późniejszym kroku.
Zacząłem od wykonania mini łatki z pierwszego portu do Pi, podążając za kodami kolorów pinów na obu końcach:
- Pomarańczowy/biały
- Pomarańczowy
- Zielony biały
- Niebieski
- Niebiesko biały
- Zielony
- Brązowo-biały
- brązowy
Dzięki temu uzyskałem łączność wewnętrznego połączenia sieciowego na NetPi z zewnętrzną częścią pudełka.
Krok 5: Tester kabli
Dla testera kabli mógłbym napisać coś dla Pi, ale nie jestem zbyt wygodny z programowaniem.
Z Arduino jest to naprawdę łatwe, a na biurku miałem zapasowy.
Ustawiłem pętlę wychodzącą z każdego z 8 wyznaczonych wyjść cyfrowych.
To idzie do pinu w gnieździe, a następnie przechodzi przez testowany kabel do drugiego gniazda i pomyślał, że dioda LED jest podłączona do każdego pinu. Wiem, że przy każdej diodzie powinien być rezystor ale działa i jestem leniwy.
Użyłem prostego kodu, aby utworzyć tablicę, pętla indeksuje tablicę i włącza kolejno piny. Jeśli diody zapalają się w kolejności masz prosty kabel, jeśli jeden chybi to masz przerwę, jeśli więcej niż jedna zapala się na raz to masz zwarcie i jeśli otrzymasz kolejność 3, 6, 1, 7, 8, 2, 4, 5 to masz zwrotnicę.
Dodałem również stale pulsujący pin do pinu 13, jest to portmapper.
Kod w załączeniu.
Zapomniałem zrobić zdjęcie montażu panelu LED, ale w zasadzie wywierciłem otwory w regularnych odstępach czasu i wstawiłem diody LED. Trzymałem to wszystko na miejscu za pomocą gorącego kleju.
Krok 6: Mapowanie portów
Portmapper jest dość prosty, bazuje na produkcie, który widziałem na filmie na YouTube dawno temu i z jakiegoś powodu nie mogę go ponownie znaleźć.
W każdym razie zasada jest prosta. Masz szereg portów ściennych podłączonych z powrotem do panelu krosowego, ale nie są one oznaczone, więc nie masz mapy ani portów ściennych do portów krosowych. Istnieje wiele żmudnych sposobów, aby to rozwiązać.
Możesz śledzić sygnał, podłączać urządzenia lub testery kabli, ale to wszystko metodą prób i błędów.
Dzięki tej metodzie para rdzeni w kablu jest zasilana napięciem 5V przez Arduino, był to migający pin13 z ostatniego kroku.
Kabel przenosi zasilanie z powrotem do panelu krosowego, a następnie potrzebne jest złącze RJ45 z diodą LED przymocowaną do pod napięciem pinów, aby migać po zamówieniu. Użyłem pinów 4 i 5 i NIGDY nie wolno ich używać w działającej sieci, ponieważ możesz uszkodzić sprzęt sieciowy, jeśli podłączysz niewłaściwy port.
W każdym razie zobacz wideo z testu lokalnego portu.
Zrobiłem niewielką liczbę wtyczek sygnałowych, ale zrób kupę, gdy będziesz je poluzowywać i łamać po drodze.
Krok 7: Przyklej wszystko i dodaj moc
Przykleiłem Arduino gorącym klejem, to będzie teraz jego dom na zawsze!
Użyłem taniego koncentratora USB jako szyny zasilającej, klocek zasilający USB jest podłączony do jednego z portów, a stamtąd jest rozprowadzany do wszystkich portów wychodzących, podobnie jak gniazdo sieciowe.
Wszystkie przetestowane dobrze po włączeniu zasilania.
Dodałem też trochę gorącego kleju wokół tych luźnych zworek RJ45.
Krok 8: Dodaj jeszcze więcej łączności
Jakie laboratorium sieciowe byłoby kompletne bez wielu portów sieciowych?
Jest to stary 8-portowy niezarządzalny przełącznik, który miałem na stole, jest przydatny do podłączania i testowania, więc pomyślałem, że zabiorę go ze sobą.
Co było naprawdę przydatne, to to, że działa na 5V @ 1A, dokładnie to, co mam zapasowe z moich zasilaczy USB!
Odciąłem końcówkę kabla zasilającego USB i dodałem złącze, które widzisz (wyszło od kolegi, który kupił kupę na AliExpress).
To wzmocniło urok.
Potem zauważyłem, że pasuje do uchwytu pudełka! Premia.
Zdjąłem obudowę, a pokrywa była dobrze oczyszczona z wnętrza, więc wkręciłem 2 wkręty samogwintujące w uchwyt i ponownie podłączyłem podstawę, która zawsze będzie zasilana zewnętrznie cegłą zasilającą.
Krok 9: Gotowy i przetestowany
Po zakończeniu było miejsce na przechowywanie 2 pojemników do przechowywania. Zostało miejsce na klocki zasilające (mam 2, ale mogę dostać więcej), kilka zapasowych złączy RJ45, wtyczki testowe, zdalną klawiaturę i zapasowy kabel krosowy.
Jak to się dzieje w dniu, w którym skończyłem, przekształcaliśmy magazyn w biuro w pracy i chcieliśmy potwierdzić połączenia sieciowe, zanim ruszymy dalej, zobacz wideo, aby zobaczyć wynik.
W sumie jest to naprawdę poręczny mały sprzęt testowy, który można mieć w moim samochodzie dostawczym. Mam ogromną serię sieci, którymi się opiekuję, a to oznacza, że mogę przeprowadzić wiele moich testów z bardzo małym zestawem, który kosztuje mniej niż E200!