Ubuntu Virtual Box Prędkość sieci - Rozdzielczość DNS

0

Mam system Ubuntu 12.04 TLS działający na wirtualnym pudełku, kiedy próbuję to zrobić wget połączenie z serwerem zajmuje około 10 sekund, chociaż samo pobieranie jest szybkie.

Jeśli uruchomię to samo polecenie w terminalu na moim laptopie, to natychmiast.

:~$ time wget example.com/profile/avatar/USERID-640.jpg
--2014-02-26 09:52:58--  http://example.com/profile/avatar/USERID-640.jpg
Resolving example.com (example.com)... 54.230.2.117, 54.240.166.35, 54.230.0.66, ...
Connecting to example.com (example.com)|54.230.2.117|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 40145 (39K) [application/octet-stream]
Saving to: `USERID-640.jpg.7'

100%[===========================================================================>] 40,145      --.-K/s   in 0.04s   

2014-02-26 09:53:08 (898 KB/s) - `USERID-640.jpg.7' saved [40145/40145]


real    0m10.269s
user    0m0.000s
sys 0m0.004s

Tak wyglądają ustawienia sieciowe:

Virtual box network settings

Podsumowanie ustawień z obrazu:

  • Dołączony do: Bridged Adapter
  • en0: Wi-Fi (AirPort)
  • Typ adaptera: Sieć zwirtualizowana (virtio-net)

Próbowałem też innych Typy adapterów , to nie robi różnicy

Plik powinien się natychmiast pobrać, ale kiedy próbuję sprawdzić, czy na stronach PHP istnieją pliki, czas oczekiwania na serwer sieciowy jest zbyt długi.

Używam niezależnych wersji OS X, Virtual Box 3.3.6

EDYTOWAĆ

Dodany /etc/resolv.conf zgodnie z prośbą:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 192.168.0.1
search Home

EDYTOWAĆ

Po prostu próbuję uzyskać dostęp serverfault.com

  • czas zwijania serverfault.com (prawdziwe 0m10,516s)
  • czas wget serverfault.com (prawdziwy 0m10.607s)
  • czas lynx -dump serverfault.com (rzeczywisty 0m30.709s)
Pete
źródło
Czy 192.168.0.1 jest twoim serwerem DNS? Czy widzisz żądania w dziennikach?
NickW
192.168.0.1 to router w moim salonie. Czy masz na myśli logi?
Pete
Chyba nie, coś koliduje z rozdzielczością DNS, nie wiem, czy mogę zaoferować coś więcej ..
NickW
Co to znaczy? Coś się zatrzymało przed wyjściem prosto z routera?
Pete
Nie, oznacza to, że żądania DNS do 192.168.0.1 są w jakiś sposób zablokowane, jak lub dlaczego nie mogłem powiedzieć ..
NickW

Odpowiedzi:

1

Miałem ten sam problem. Po kilku błędnych rozwiązaniach i wreszcie pomocy dźwiękowej znalazłem problem:

Sprawdź plik / etc / network / interfaces na maszynie wirtualnej. Prawdopodobnie będziesz musiał ustawić „adres” i „maskę sieci” dla adaptera tylko dla hosta, a „bramę” na karcie NAT, aby maszyna wirtualna mogła uzyskać dostęp do Internetu (z maszyny wirtualnej). Zasadniczo karty sieciowe nie wydają się być poprawnie skonfigurowane (a konfiguracja Virtual Box może być również błędna).

Moja maszyna wirtualna została skopiowana z innego komputera i nie miałem odpowiedniej konfiguracji kart sieciowych w Virtual Box (nie mojej maszyny wirtualnej, ale samej skrzynki wirtualnej dla mojego hosta). Dodałem adapter dla obu adapterów VM (NAT i Host-Only Network). Po skonfigurowaniu pliku / etc / network / interfaces wszystko działało poprawnie; Moja maszyna wirtualna / przeglądarka odpowiedziała natychmiast, a ja byłem w stanie uzyskać dostęp do Internetu z mojej maszyny wirtualnej.

Szczegółowe informacje na temat zmiany tych ustawień można znaleźć tutaj:

https://askubuntu.com/questions/346838/how-do-i-configure-my-dns-settings-in-ubuntu-server

I bardziej szczegółowe informacje na temat pliku / etc / network / interfaces tutaj:

http://www.cyberciti.biz/faq/setting-up-an-network-interfaces-file/

Ustawiłem adres mojej maszyny wirtualnej na statyczny i dodałem „adres”, „maskę sieci” do mojego adaptera host-only na mojej maszynie wirtualnej i „bramę” do adaptera NAT na mojej maszynie wirtualnej.

Sprawdź swoje wirtualne pudełko - & gt; Ustawienia sieciowe (nie ustawienia sieciowe dla wirtualnej MASZYNY, ale rzeczywiste ustawienia aplikacji). Mój adapter nazywa się „vboxnet0”. Po prostu upewnij się, że uruchamiasz polecenia ifdown i ifup dla tego interfejsu (na maszynie wirtualnej).

Uważam, że problem polega na tym, że maszyna wirtualna próbuje wyszukać komputer łączący się z nim (host) i musi upłynąć limit czasu, zanim odpowie.

Mam nadzieję, że to pomoże.

Oto moje ostatnie ustawienia / etc / network / interfaces:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface (NAT)
auto eth0
iface eth0 inet dhcp
gateway 192.168.56.1

# Secondary network interface (Host Only)
auto eth1
iface eth1 inet static
address 192.168.56.101
netmask 255.255.255.0

FYI: Mój komputer jest tym, co umieściłem jako bramę.

Patryk J
źródło
Nie używam adaptera tylko dla hosta, używam adaptera zmostkowanego
Pete
0

Musisz jeszcze bardziej oddzielić zadania, aby wskazać, gdzie jest problem.

Powiedziałeś, że „połączenie z serwerem trwa około 10 sekund”, a więc prawie 99% czasu wget wydano polecenie na połączenie z serwerem? Musisz dalej rozbić 10 sekund.

Czy wydano na rozwiązanie DNS?

Próbować

dig serverfault.com

To jest mój wynik:

;; ANSWER SECTION:
serverfault.com.        35      IN      A       198.252.206.140

;; Query time: 38 msec
;; SERVER: 192.168.2.100#53(192.168.2.100)

To znaczy, że rozwiązanie DNS zajęło tylko 38 ms, z mojego lokalnego DNS. Jeśli twoja zajmuje dużo więcej czasu, rozważ zainstalowanie lokalnego serwera DNS tylko tak jak ja. To naprawdę proste, sprawdź http://sfxpt.wordpress.com/2013/11/30/dnsmasq-installation-configuration-5/ i jako bonus, sprawdź http://sfxpt.wordpress.com/2014/01/05/the-best-ad-blocking-method-in-a-package/ ,

Jeśli twoje rozpoznawanie DNS jest tak szybkie, jak moje, problem jest gdzie indziej, spróbuj httping i odeślij co masz.

https - program podobny do ping dla żądań http

Podsumowując, musisz jeszcze bardziej oddzielić zadania, aby ustalić, gdzie jest problem. Np. Jak szybko pobierać pliki z lokalnego serwera http?

xpt
źródło
Odpowiedź od dig było: Czas zapytania: 1097 ms - Nie do końca rozumiem, o co chodzi, chciałbym to zrozumieć, zanim spróbuję czegoś
Pete
Więc twój system spędził 1 sekundę na rozwiązywaniu DNS i 9 sekund na czymś innym. Musisz rozbić 9 sekund. Np. Jak szybko pobierać pliki z lokalnego serwera http?
xpt
Używanie wykopów z domyślnymi parametrami nie jest dokładne, ponieważ nie raportuje limitów czasu i prób. Wypróbuj „czas” i wyłączaj próby: time dig serverfault.com +retry=0 +tries=1 +time=1 @8.8.8.8
Colin M