Spisu treści:

HackerBox 0031: Eter: 10 kroków
HackerBox 0031: Eter: 10 kroków

Wideo: HackerBox 0031: Eter: 10 kroków

Wideo: HackerBox 0031: Eter: 10 kroków
Wideo: Hackerbox #0062 Unboxing Video 2024, Listopad
Anonim
HackerBox 0031: Eter
HackerBox 0031: Eter

W tym miesiącu HackerBox Hakerzy zajmą się Ethernetem, systemami operacyjnymi routerów, monitorowaniem sieci i analizą sieci. Ta instrukcja zawiera informacje dotyczące pracy z HackerBox #0031, które możesz pobrać tutaj do wyczerpania zapasów. Ponadto, jeśli chcesz otrzymywać co miesiąc taki HackerBox bezpośrednio do swojej skrzynki pocztowej, zasubskrybuj na HackerBoxes.com i dołącz do rewolucji!

Tematy i cele edukacyjne dla HackerBox 0031:

  • Skonfiguruj router Ethernet WT3020
  • Zainstaluj system operacyjny OpenWrt na routerze WT3020
  • Złóż zestaw HackerBoxes EtherTap
  • Wdróż EtherTap, aby pasywnie monitorować ruch sieciowy
  • Skonfiguruj Arduino IDE do użytku z Arduino Nano
  • Interfejs kontrolera ENC28J60 Ethernet do Arduino Nano
  • Przesyłaj i odbieraj pakiety Ethernet z Arduino Nano

HackerBoxes to miesięczna usługa subskrypcji dla elektroniki DIY i technologii komputerowej. Jesteśmy hobbystami, twórcami i eksperymentatorami. Jesteśmy marzycielami marzeń. ZHAKUJ PLANETĘ!

Krok 1: HackerBox 0031: Zawartość pudełka

  • HackerBoxes #0031 Kolekcjonerska Karta Referencyjna
  • Router Ethernet Nexx WT3020F
  • Ekskluzywny zestaw HackerBox EtherTap
  • Arduino Nano 5V, 16MHz
  • Moduł Ethernet ENC28J60
  • Wtyczka przejściowa z czerwoną zwrotnicą
  • Dupont damski i damski
  • Ekskluzywna naklejka OpenWrt

Kilka innych rzeczy, które będą pomocne:

  • Lutownica, lut i podstawowe narzędzia lutownicze
  • Komputer do uruchamiania narzędzi programowych

Co najważniejsze, będziesz potrzebować poczucia przygody, ducha DIY i ciekawości hakerskiej. Hardkorowa elektronika DIY nie jest trywialnym zajęciem, a HackerBoxy nie są rozwodnione. Celem jest postęp, a nie doskonałość. Kiedy będziesz wytrwać i cieszyć się przygodą, wiele satysfakcji można czerpać z nauki nowych technologii i, miejmy nadzieję, z udanych projektów. Sugerujemy, aby każdy krok robić powoli, pamiętając o szczegółach i nie bój się prosić o pomoc.

W FAQ HackerBoxes znajduje się mnóstwo informacji dla obecnych i przyszłych członków.

Krok 2: Eter

Image
Image

„Jedyną rzeczą, która naprawdę mnie martwi, był eter. Nie ma nic bardziej bezradnego, nieodpowiedzialnego i zdeprawowanego niż człowiek w otchłani eterycznego obżarstwa, a wiedziałem, że niedługo wejdziemy w te zgniłe rzeczy”. - Hunter S. Thompson, „Strach i odraza w Las Vegas”

Ethernet (Wikipedia) to rodzina technologii sieci komputerowych powszechnie stosowanych w sieciach lokalnych (LAN). Ethernet został wprowadzony na rynek w 1980 roku i po raz pierwszy ustandaryzowany w 1983 roku i od tego czasu został udoskonalony, aby obsługiwać wyższe szybkości transmisji i dłuższe odległości łączy. Połączony film „Ethernet Hacks”, choć poza tym całkiem dobry, przedstawia absurdalne twierdzenie, że przewodowy Ethernet staje się przestarzały z powodu technologii bezprzewodowych.

Oryginalny 10BASE5 Ethernet używa dużego, grubego kabla koncentrycznego jako współdzielonego medium. Nowsze warianty Ethernetu wykorzystują skrętkę dwużyłową i łącza światłowodowe w połączeniu z koncentratorami lub przełącznikami. W ciągu swojej historii szybkość przesyłania danych w sieci Ethernet została zwiększona z pierwotnych 2,94 Mb/s do setek Gb/s.

Ethernet zapewnia usługi obejmujące dwie najniższe warstwy modelu OSI (warstwę fizyczną i warstwę łącza danych). Jeśli chcesz dowiedzieć się więcej o siedmiowarstwowym modelu sieci OSI (robisz to), sprawdź Wikipedię i/lub ten film.

Krok 3: Router Ethernet Nexx WT3020F i OpenWrt

Router Ethernet Nexx WT3020F i OpenWrt
Router Ethernet Nexx WT3020F i OpenWrt

Seria routerów Ethernet Nexx WT3020 jest oparta na MediaTek MT7620N (specyfikacja). Routery te zawierają dwa porty Ethernet UTP i interfejs bezprzewodowy 802.11n 300 Mb/s działający w paśmie 2,4 GHz.

OpenWrt to projekt open source dla wbudowanego systemu operacyjnego opartego na Linuksie, używany głównie na wbudowanych routerach. Wszystkie komponenty zostały zoptymalizowane, aby były wystarczająco małe, aby zmieścić się w ograniczonej przestrzeni dyskowej i pamięci dostępnej w routerach domowych. OpenWrt można skonfigurować za pomocą interfejsu wiersza poleceń (powłoka popiołu) lub interfejsu internetowego (LuCI).

Dostępnych jest kilka tysięcy pakietów do instalacji za pośrednictwem systemu zarządzania pakietami opkg, aby rozszerzyć funkcjonalność Twojego urządzenia. Pakiety te obejmują między innymi zapory ogniowe, telefonię, VPN, pamięć masową, przesyłanie wiadomości, routing i usługi poczty e-mail.

Ten wpis OpenWrt Wiki obejmuje instalację OpenWrt na routerze WT3020. Pod nagłówkiem „Instalacja” znajduje się tabela plików binarnych. Nie używaj ich. Zamiast tego kliknij link „Pobieranie oprogramowania LEDE” tuż pod tą tabelą. To są najnowsze wersje. Oto fajny samouczek dotyczący flashowania oprogramowania routera. Pomocne mogą być również podręczniki OpenWrt HOWTO.

Krok 4: Zestaw EtherTap

Zestaw EtherTap
Zestaw EtherTap

EtherTap to pasywny odczep Ethernet. Jest „pasywny” w tym sensie, że EtherTap wygląda jak kawałek kabla Ethernet do sieci, w której jest zainstalowany. Porty tranzytowe są połączone inline w monitorowanym połączeniu Ethernet. Dwa kanały przepustu (jeden biegnący w każdym kierunku) są fizycznie „odczepione” w śladzie płytki drukowanej. Odczepiane sygnały są wyprowadzane do dwóch portów zaczepów. Dwa porty kranowe mają tylko podłączone kanały odbiorcze. Zgodnie z tym mechanizmem bezpieczeństwa żaden z portów kranu nie może przenosić się do przejścia.

Zestaw EtherTap zawiera:

  • Ekskluzywna płytka PCB EtherTap HackerBoxes
  • Dwa czarne gniazda RJ45
  • Dwa żółte gniazda RJ45
  • Dwa kondensatory ceramiczne 220pF

Montaż zestawu EtherTap Kit jest dość prosty. Dwa różnokolorowe gniazda RJ45 są w rzeczywistości identyczne i można je umieścić w dowolnym miejscu. Zazwyczaj umieszczamy czarne gniazda RJ45 na portach przelotowych, a żółte gniazda na portach kranu. Dwa kondensatory nie są spolaryzowane i można je włożyć w obie strony.

Działanie EtherTap polega na podłączeniu przejścia, a następnie podłączeniu jednego z portów kranu (w zależności od kierunku monitorowanego ruchu) do komputera, na którym działa program do przechwytywania/analizy pakietów, taki jak Wireshark.

Shout Out: The EtherTap został zainspirowany Throwing Star LAN Tap Michaela Ossmanna, więc na jego stronie Great Scott Gadgets znajduje się wiele istotnych szczegółów i historii. Michael robi kilka innych bardzo fajnych zabawek, które warto sprawdzić, gdy tam jesteś.

Krok 5: Platforma mikrokontrolera Arduino Nano

Platforma mikrokontrolera Arduino Nano
Platforma mikrokontrolera Arduino Nano

Dołączony moduł Arduino Nano jest dostarczany z pinami nagłówka, ale nie są one przylutowane do modułu. Na razie zostaw szpilki wyłączone. Wykonaj te wstępne testy modułu Arduino Nano oddzielnie od płytki BioSense i PRZED przylutowaniem pinów nagłówka Arduino Nano. Wszystko, czego potrzeba do kolejnych kilku kroków, to kabel microUSB i moduł Nano zaraz po wyjęciu z torby.

Arduino Nano to zminiaturyzowana płytka Arduino do montażu powierzchniowego, przyjazna dla płytek stykowych, ze zintegrowanym portem USB. Jest niesamowicie w pełni funkcjonalny i łatwy do zhakowania.

Cechy:

  • Mikrokontroler: Atmel ATmega328P
  • Napięcie: 5V
  • Cyfrowe piny we/wy: 14 (6 PWM)
  • Piny wejścia analogowego: 8
  • Prąd DC na pin we/wy: 40 mA
  • Pamięć Flash: 32 KB (2 KB dla bootloadera)
  • SRAM: 2 KB
  • EEPROM: 1 KB
  • Szybkość zegara: 16 MHz
  • Wymiary: 17mm x 43mm

Ten szczególny wariant Arduino Nano to czarna konstrukcja Robotdyn. Interfejs jest przez wbudowany port MicroUSB, który jest kompatybilny z tymi samymi kablami MicroUSB, które są używane w wielu telefonach komórkowych i tabletach.

Arduino Nanos ma wbudowany układ mostka USB/szeregowego. W tym konkretnym wariancie układ mostkowy to CH340G. Zwróć uwagę, że istnieją różne inne typy układów mostków USB/szeregowych używanych na różnych typach płyt Arduino. Te układy umożliwiają komunikację portu USB komputera z interfejsem szeregowym w układzie procesora Arduino.

System operacyjny komputera wymaga sterownika urządzenia do komunikacji z układem USB/szeregowym. Sterownik umożliwia komunikację IDE z płytą Arduino. Konkretny sterownik urządzenia, który jest potrzebny, zależy zarówno od wersji systemu operacyjnego, jak i typu układu USB/szeregowego. Dla układów CH340 USB/Serial dostępne są sterowniki dla wielu systemów operacyjnych (UNIX, Mac OS X lub Windows). Producent CH340 dostarcza te sterowniki tutaj.

Po pierwszym podłączeniu Arduino Nano do portu USB komputera powinna zaświecić się zielona lampka zasilania, a wkrótce po tym niebieska dioda LED powinna zacząć powoli migać. Dzieje się tak, ponieważ Nano jest fabrycznie załadowany programem BLINK, który działa na zupełnie nowym Arduino Nano.

Krok 6: Zintegrowane środowisko programistyczne Arduino (IDE)

Zintegrowane środowisko programistyczne Arduino (IDE)
Zintegrowane środowisko programistyczne Arduino (IDE)

Jeśli nie masz jeszcze zainstalowanego Arduino IDE, możesz pobrać je ze strony Arduino.cc

Jeśli chcesz uzyskać dodatkowe informacje wstępne dotyczące pracy w ekosystemie Arduino, sugerujemy zapoznanie się z instrukcjami dla warsztatu HackerBoxes Starter Workshop.

Podłącz Nano do kabla MicroUSB, a drugi koniec kabla do portu USB w komputerze, uruchom oprogramowanie Arduino IDE, wybierz odpowiedni port USB w IDE pod narzędzia>port (prawdopodobnie nazwa z wchusb w nim). Wybierz również "Arduino Nano" w IDE w menu narzędzia>płyta.

Na koniec załaduj przykładowy kod:

Plik->Przykłady->Podstawy->Mrugnięcie

W rzeczywistości jest to kod, który został wstępnie załadowany do Nano i powinien teraz działać, aby powoli migać niebieską diodą LED. W związku z tym, jeśli załadujemy ten przykładowy kod, nic się nie zmieni. Zamiast tego zmodyfikujmy nieco kod.

Przyglądając się uważnie, widać, że program włącza diodę, czeka 1000 milisekund (jedna sekunda), wyłącza diodę, czeka kolejną sekundę, a potem robi to wszystko od nowa - na zawsze.

Zmodyfikuj kod, zmieniając obie instrukcje „delay(1000)” na „delay(100)”. Ta modyfikacja spowoduje, że dioda LED będzie migać dziesięć razy szybciej, prawda?

Załadujmy zmodyfikowany kod do Nano, klikając przycisk PRZEŚLIJ (ikona strzałki) tuż nad zmodyfikowanym kodem. Obejrzyj poniżej kod, aby uzyskać informacje o stanie: „kompilowanie”, a następnie „przesyłanie”. W końcu IDE powinno wskazać „Przesyłanie zakończone”, a dioda LED powinna migać szybciej.

Jeśli tak, to gratulacje! Właśnie zhakowałeś swój pierwszy fragment kodu osadzonego.

Po załadowaniu i uruchomieniu wersji z szybkim miganiem, dlaczego nie sprawdzić, czy możesz ponownie zmienić kod, aby dioda LED szybko mignęła dwukrotnie, a następnie odczekać kilka sekund przed powtórzeniem? Spróbuj! Co powiesz na inne wzory? Kiedy już uda Ci się zwizualizować pożądany rezultat, zakodować go i obserwować, jak działa zgodnie z planem, zrobiłeś ogromny krok w kierunku zostania kompetentnym hakerem sprzętowym.

Krok 7: Piny Arduino Nano Header

Piny Arduino Nano Header
Piny Arduino Nano Header

Teraz, gdy komputer programistyczny został skonfigurowany do ładowania kodu do Arduino Nano, a Nano zostało przetestowane, odłącz kabel USB od Nano i przygotuj się do lutowania.

Jeśli jesteś nowy w lutowaniu, istnieje wiele świetnych przewodników i filmów online na temat lutowania. Oto jeden przykład. Jeśli czujesz, że potrzebujesz dodatkowej pomocy, spróbuj znaleźć lokalną grupę twórców lub miejsce dla hakerów w Twojej okolicy. Ponadto, amatorskie kluby radiowe są zawsze doskonałym źródłem doświadczeń z elektroniką.

Przylutuj dwa jednorzędowe nagłówki (piętnaście pinów każdy) do modułu Arduino Nano. Sześciopinowe złącze ICSP (programowanie szeregowe w obwodzie) nie będzie używane w tym projekcie, więc po prostu pozostaw te szpilki wyłączone.

Po zakończeniu lutowania należy dokładnie sprawdzić mostki lutownicze i/lub połączenia lutowane na zimno. Na koniec podłącz Arduino Nano z powrotem do kabla USB i sprawdź, czy wszystko nadal działa poprawnie.

Krok 8: Moduł Ethernet ENC28J60

Moduł Ethernet ENC28J60
Moduł Ethernet ENC28J60

ENC28J60 (datasheet) to układ kontrolera Ethernet. Dzięki interfejsowi SPI jest dość łatwy w użyciu nawet z najprostszymi mikrokontrolerami.

Zwróć uwagę, że niektóre wersje tego modułu mają regulator napięcia LDO, który pozwala na zasilanie ich napięciem 5 V, mimo że układ ENC28J60 ma napięcie 3,3 V. Ta wersja modułu NIE POSIADA regulatora napięcia i wymaga zewnętrznego zasilania 3,3V.

Biblioteka EtherCard Arduino wykonuje niskopoziomowe interfejsy z kodu Arduino do sieci. Biblioteka zawiera kilka przykładów. Na początek fajny jest backSoon.ino, który pozwoli Ci uzyskać dostęp do szkicu na Arduino Nano z dowolnej przeglądarki internetowej w tej samej sieci LAN.

Krok 9: Wtyczka adaptera zwrotnicy

Wtyczka przejściowa zwrotnicy
Wtyczka przejściowa zwrotnicy

Zwrotnica Ethernet (Wikipedia) to kabel lub wtyczka adaptera służąca do bezpośredniego łączenia urządzeń komputerowych. Najczęściej służy do łączenia dwóch urządzeń tego samego typu, np. dwa komputery (za pośrednictwem ich kontrolerów interfejsu sieciowego) lub dwa przełączniki do siebie. Natomiast kable krosowe lub kable proste służą do łączenia urządzeń różnych typów, takich jak komputer z przełącznikiem sieciowym lub koncentratorem Ethernet.

Okablowanie w zwrotnicy jest celowo krzyżowane, aby połączyć sygnały nadawcze na jednym końcu z sygnałami odbiorczymi na drugim końcu i odwrotnie.

Krok 10: ZHAKUJ PLANETĘ

ZHAKUJ PLANETĘ
ZHAKUJ PLANETĘ

Jeśli podobał Ci się ten Instrucable i chciałbyś, aby pudełko z projektami elektronicznymi i komputerowymi takimi jak ten dostarczane było co miesiąc prosto do Twojej skrzynki pocztowej, dołącz do rewolucji HackerBox, SUBSKRYBUJĄC TUTAJ.

Sięgnij po swój sukces i podziel się nim w komentarzach poniżej lub na stronie HackerBoxes na Facebooku. Daj nam znać, jeśli masz jakieś pytania lub potrzebujesz pomocy. Dziękujemy za bycie częścią HackerBoxes. Prosimy o nadsyłanie swoich sugestii i opinii. HackerBox to TWOJE pudełka. Zróbmy coś wspaniałego!

Zalecana: