• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Serwer DHCP - adresacja
#1
Cześć,

Próbuję zmusić ESP8266 do bycia Access Pointem i rozdawania adresów DHCP w taki sposób jak sobie wymyśliłem. A wymysliłem sobie, że:
a) adresy będą rozadwane od 10.0.0.1 do 10.0.0.9
b) adres ESP czyli Access Pointa to 10.0.0.10.

O ile zmuszenie ESP do działania w trybie AP jest proste, to zmuszenie do rozdawania adresów IP w taki sposób jak ja tego chce już takie proste nie jest. Kod który wymyśliłem działa w setupie:


Kod:
#include <ESP8266WiFi.h>

#define led_wifi 2 

const char* ssid     = "**********"; //nazwa sieci WiFi
const char* password = "**********"; //hasło do sieci

int status = WL_IDLE_STATUS;

void setup()
{
 IPAddress ip(10, 0, 0, 10);
 IPAddress gateway(10, 0, 0, 10);
 IPAddress subnet(255, 255, 255, 248);
 WiFi.softAPConfig(ip, gateway, subnet);
 WiFi.mode(WIFI_AP);
 WiFi.softAP(ssid, password);
 Serial.begin(9600);
 Serial.setTimeout(0);
 delay(100);
}


Pomocy. Jak zmusić ESP, żeby rozdawał adresy tak jak ja tego chcę.
 
Odpowiedź
#2
Jesteś pewien, że dobrze policzyłeś zakres adresów? Przy masce 255.255.255.248 zostają Ci tylko trzy bity na adresy IP, co daje zakresy: 0-7, 8-15, 16-23 itd. Jeśli odjąć od tego adresy rozgłoszeniowe i sieci, zostaną Ci zakresy 1-6, 9-14, 17-22 itd. Jeśli chcesz bawić się tak, jak napisałeś, rozszerz zakres adresów IP (ogranicz ilość bitów w masce podsieci dla adresów sieci). Maska 255.255.255.240 rozwiąże problem adresacji, bo wtedy będziesz miał cztery bity na adresy IP, co da CI zakresy: 0-15, 16-31, 32-47, a czyli na hosty odpowiednio 1-14, 17-30, 33-46, i tak dalej.
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości