Situatie
VirtualBox este un mediu ideal pentru testarea retelei cu diferite tool-uri, precum opDNS. Cu toate acestea, nu am reusit sa fac VirtualBox DHCP server pentru retele NAT sa imi furnizeze informatii referitoare la namservere, nici macar atunci cand clientul cere acest lucru. O solutie simpla ar fi urmatoarea. Cu VirtualBox updatat la 4.3.24, am incercat sa setez o retea NAT, in care toti vizitatorii (guests) atasati ei si host-ul pot comunica lejer, find capabili sa acceseze internetul prin intermediul NAT – setarea perfecta pentru testarea retelei. Cu toate acestea, OSX Yosemite-ul meu (10.10.2-based MAC) nu a furnizat adresa nameserver-ul DNS ului local catre masinile virtuale (vizitatorii).
Ca si rezultat, /etc/resolv.conf a ramas gol (cu exceptie comentariile “automatically generated–do not change” – style comments)
Solutie
Prima incercare
In timp ce masinile virtuale (vizitatorii) (in acest caz, Ubuntu 14.04 LTS) aveau setat sa includa /etc/network/interfaces
.
[...] auto eth0 iface eth0 inet dhcp dns-nameservers 192.168.1.1 # Change IP address as needed
acest lucru nu ar merge cu laptopul meu, care e asociat cu multe retele de-alungul timpului. (Da, stiu ca un server DNS public ar putea intra acolo, dar atunci adresele retelei locale nu ar mai rezolva nimic si ar putea afecta rezultatele experimentelor mele legate de DNS)
Retele NAT vs. NAT
O observație importantă este faptul că trecerea adaptorul de interfață oaspete de la “NAT network” la simplu “NAT” are ca rezultat un nameserver bine propagat, numele de host este rezolvat. În timp ce, în ambele cazuri, oaspetelui DHCP client (dhclient în Ubuntu) solicită informații legate de DNS (server nume de domeniu, nume de domeniu, și rezultate domeniu; opțiuni DHCP 6, 15, și 119, respectiv), doar în Câmpia NAT caz nu server DHCP VirtualBox “oferi rezultate (domeniul serverului de nume și de nume de domeniu). Acest lucru poate fi ușor observat withWireshark asculta pe bootpc portul. Când informații server de nume de domeniu și numele de domeniu este primit client DHCP, trece prin aceste cadrul resolvconf, care scrie informațiile în / etc / resolv.conf, de unde cererile se ridica, de obicei, prin biblioteca resolver sau orice asteptare l, cum ar fi gethostbyname ().
Solutia preferata
Solutia pe care eu o prefer:
- mentine primula adaptor virtual setat ca “NAT network”
- adauga un al doilea adaptor setat ca “NAT”
Primul adaptor va furniza conectivitatea dorita in timp ce al doilea va furniza in mod automat configuratia nameserverului. A doua interfata nu va fi folosita pentru trafic, nici macar pentru nameserver, dar fix acest lucru ne dorim
- Ca vizitator , editeaza
/etc/network/interfaces
in felul urmator:
auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp auto eth1 # New iface eth1 inet dhcp # New
- Salveaza fisierele si opreste ,,vizitatorul”(VM).
- In VirtualBox, adauga al doilea adaptor si seteaza-l ca ,,NAT”.
- Restarteaza guest-ul *(vizitatorul).
- Enjoy!
Leave A Comment?