Domena niestandardowa Raspberry pi w sieci LAN

1

Próbowałem znaleźć rozwiązanie tego problemu i śledziłem wiele artykułów online. Nadal nie mogę osiągnąć celu. Oto, co chciałem otworzyć rpi.dev w przeglądarce dowolnego urządzenia podłączonego do mojej sieci LAN. Oto mój scenariusz:

Mam router wifi (router 3C)

Przypisałem statyczne adresy IP następującym urządzeniom:

Raspberry pi (web server): 192.168.31.164
Ubuntu Laptop: 192.168.31.169
android phone 1: 192.168.31.128

Inne niż statyczne urządzenia z adresem IP istnieją inne urządzenia, takie jak komputer (działający w systemie Windows 7) i inne smartfony (androidy), którym adresy IP są przydzielane dynamicznie przez router (tzn. Ich adres IP ciągle się zmienia).

Używam klucza Wi-Fi w Raspberry Pi i jestem w stanie uzyskać do niego dostęp za pośrednictwem ssh z terminala Ubuntu

Zainstalowałem serwer LAMP w Raspberry pi, dodałem niestandardową domenę rpi.dev w / etc / hosts i mogłem zobaczyć strony internetowe (zainstalowałem również wordpress na rpi.dev).

Zawartość / etc / hosts jest następująca:

127.0.0.1       localhost
::1             localhost ip6-localhost ip6-loopback
ff02::1         ip6-allnodes
ff02::2         ip6-allrouters

127.0.1.1       raspberrypi
192.168.31.164  rpi.dev

Następnie w systemie Ubuntu dodałem domenę rpi.dev z adresem IP raspberry pi tj

192.168.31.164    rpi.dev

W ten sposób mogę zobaczyć stronę WordPress urządzenia Raspberry Pi rpi.dev w przeglądarce systemu Ubuntu.

Ponieważ nie możemy edytować pliku hosts w systemie Android, dopóki go nie zrootujemy, czego nie chcę robić. W takim przypadku nie mogę otworzyć domeny rpi.dev w przeglądarce smartfonów. Więc śledziłem ten artykuł, a następnie kolejny link do artykułu z pierwszego artykułu.

Wykonując powyższe 2 łącza, zainstalowałem Bind9, a zawartość następujących plików jest następująca:

/etc/bind/named.conf.local

/
// Do any local configuration here
//

// Consider adding the 1918 zones here, if they are not used in your
// organization
//include "/etc/bind/zones.rfc1918";

#raspberry pi domain zone
zone "rpi.dev"{
        type master;
        file "/etc/bind/zones/rpi.dev.db";
};

#for reverse DNS
zone "31.168.192.in-addr.arpa" {
        type master;
        file "/etc/bind/zones/rev.31.168.192.in-addr.arpa";
};

/etc/bind/zones/rpi.dev.db

$TTL 3D
@ IN SOA ns.rpi.dev. admin.rpi.dev. (
   2007062001
   28800
   3600
   604800
   38400
);
rpi.dev.  IN      NS         ns.rpi.dev.
ubuntudesktop  IN      A          192.168.31.169
www            IN      CNAME      ubuntudesktop
miphone        IN      A          192.168.31.128
gw             IN      A          192.168.31.1
                       TXT        "Network Gateway"

/etc/bind/zones/rev.31.168.192.in-addr.arpa

$TTL 3D
@       IN      SOA     ns.rpi.dev. admin.rpi.dev. (
                2007062001
                28800
                604800
                604800
                86400
)
         IN      NS      ns.rpi.dev.
1        IN      PTR     gw.rpi.dev.
169      IN      PTR     ubuntudesktop.rpi.dev.
129      IN      PTR     miphone.rpi.dev.

/etc/bind/named.conf.options

options {
        directory "/var/cache/bind";

        // If there is a firewall between you and nameservers you want
        // to talk to, you may need to fix the firewall to allow multiple
        // ports to talk.  See http://www.kb.cert.org/vuls/id/800113

        // If your ISP provided one or more IP addresses for stable
        // nameservers, you probably want to use them as forwarders.
        // Uncomment the following block, and insert the addresses replacing
        // the all-0's placeholder.

         forwarders {
         //     0.0.0.0;
         202.53.9.2;
         202.53.9.3;
         };
//=======
        // If BIND logs error messages about the root key being expired,
        // you will need to update your keys.  See https://www.isc.org/bind-keys

//=======
        dnssec-validation auto;

        auth-nxdomain no;    # conform to RFC1035
        listen-on-v6 { any; };
};

Gdzie 202.53.9.2, 202.53.9.3 to mój adres IP DNS usługodawcy internetowego

/etc/resolv.conf

# Generated by resolvconf
nameserver 192.168.31.1

Search rpi.dev
nameserver 192.168.31.164

po tym zrestartowałem Bind, wykonując następującą komendę w Raspberry Pi:

sudo /etc/init.d/bind9 restart

Teraz zrobiłem to w malinowym pi

dig rpi.dev

Mam następujący wynik

; <<>> DiG 9.9.5-9+deb8u13-Raspbian <<>> rpi.dev
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27640
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;rpi.dev.           IN  A

;; ANSWER SECTION:
rpi.dev.        30  IN  A   127.0.53.53

;; Query time: 16 msec
;; SERVER: 192.168.31.1#53(192.168.31.1)
;; WHEN: Wed Oct 04 19:30:25 UTC 2017
;; MSG SIZE  rcvd: 52

Potem to zrobił

nslookup gw

Mam następujący wynik

Server:     192.168.31.1
Address:    192.168.31.1#53

Non-authoritative answer:
*** Can't find gw: No answer

Następnie próbowałem otworzyć rpi.dev w moim smartfonie i otrzymałem następujące dane wyjściowe: *** Nie można uzyskać dostępu do tej witryny ”

Z pliku / etc / hosts ubuntu laptopa skomentowałem wiersz, w którym wpisałem adres IP rpi.dev, tj. # 192.168.31.164 rpi.dev , po tym wysłałem ping do rpi.dev na terminalu ubuntu i zwraca ten adres ip: * 127.0.53.53

64 bytes from 127.0.53.53: icmp_seq=1 ttl=64 time=0.014 ms

Czy brakuje mi czegoś lub muszę wykonać więcej czynności. Proszę pomóż.

Arish S.
źródło
Czy to musi być, rpi.devczy byłbyś w porządku z opcjami takimi jak rpi.local?
drewbenn
.local działa na avasi i niestety nie działa na telefonach z Androidem. Próbowałem zainstalować przeglądarkę Bonjour i również nie działała.
Arish S