Повільний перегляд Інтернету в Ubuntu


10

У мене встановлено подвійне завантаження з Windows та Ubuntu. Коли я використовую Windows, веб-перегляд проходить набагато швидше, ніж коли я використовую Ubuntu, і я не знаю, чому. Це як би там просто велика затримка, а не максимальна швидкість нижча, є велика затримка, перш ніж щось трапиться під час використання Ubuntu, це відбувається з усіма веб-сайтами постійно. Я ніколи не налаштовував підключення до Інтернету, оскільки він просто працював відразу. У мене широкосмуговий зв’язок через маршрутизатор, який поділяється з іншими комп'ютерами. Коли ми налаштували маршрутизатор та підключення до Інтернету, все було зроблено з Windows. Що я міг зробити, щоб це виправити?


1
Я позначив це як улюблену справу, я хочу побачити, куди це йде. Що ви маєте на увазі під великою затримкою? Який браузер ви використовуєте? Ви використовуєте проксі? Можливо, ваша проблема зовсім не ОС. Швидше за все, це не реальна затримка, а лише те, як Firefox завантажує веб-сайти. У будь-якому випадку я зачекаю, коли ви додасте більше інформації.
RolandiXor

2
Ви включили IPV6 у своєму браузері?
karthick87

І в Windows, і в Ubuntu я використовую firefox, і я не ввімкнув IPV6, якщо він не включений за замовчуванням. З великою затримкою я маю на увазі, коли для використання Ubuntu на сторінку потрібно буде близько 15 секунд, а не на кілька, але я все одно можу завантажувати зі сховищ зі швидкістю 100 кб в секунду.
Ayeayeron

У мене є та ж проблема, і я звузив причину, але відповіді поки що не маю. Я вважаю, що це має щось спільне з маршрутизатором, тому що, коли я взяв його до Публічної бібліотеки, wifi знову став нормальним. Сподіваємось, це допомагає Ось посилання на моє запитання: askubuntu.com/q/132317/61067
Кевін

Чи є у вас також система подвійної завантаження з Ubuntu та Windows, і якщо так, чи відчуваєте ви також цю проблему (вдома / на роботі чи де б ви не могли отримати доступ до Інтернету через свій маршрутизатор) у Firefox на Ubuntu, але не у Firefox у Windows? Якщо так, будь-ласка, додайте цю інформацію до своєї відповіді - хоча вона є неповною, це все одно зробить вашу відповідь, сказавши ОП перевірити роутер, розумну відповідь. (Тоді продовжуйте і позначте цей коментар як застарілий.) Однак, якщо ваша ситуація відрізняється, я б сказав, видаліть цю відповідь і опублікуйте нове запитання, щоб отримати додаткову допомогу щодо власної (іншої) проблеми.
Елія Каган

Відповіді:


9

Ви використовуєте Firefox? На моєму ПК це також чомусь повільно, чомусь.

Я встановив Google Chrome і Opera - і вони просто летять.

Гугл хром

Також спробуйте це також: (завдяки Ubuntu Geek)

Відкрийте свій Firefox і введіть about: config у адресному рядку URL-адреси та натисніть клавішу Enter. Щоб зробити False to True, виберіть рядок для зміни та двічі клацніть. На другому варіанті зміни клацніть правою кнопкою миші та виберіть Змінити

  • network.http.pipelining> Зробити це правдою

  • network.http.pipelining.maxrequests> Зробити це 8 або 10

  • network.http.proxy.pipelining> Зробити це правдою

  • network.dns.disableIPv6> Зробити це правдою


Це працює для мене. +1.
Тахір Акрам

Шпигував речі до мене. +1
BenjaminRH

Це дивно, на мій досвід, Google Chrome значно повільніше, ніж Firefox. Опера теж хороша.
NoBugs

Дякую, я знаю, що це давнє запитання, але я знайшов вашу відповідь непоганим. Для мене Chrome була великою проблемою, він не пам’ятає мої реєстрації та повинен був повторно вводити всі паролі після кожного перезавантаження. FF працює дуже добре, але це було чорт повільно!
FarhadA

4

Можливо, ви страждаєте буферним покриттям . Це проявляється величезними затримками, коли ви передаєте чи отримуєте багато даних.

Я мав успіх:

Біжіть ifconfigі шукайте в ньому «txqueuelen». За замовчуванням майже на кожній машині, яку я бачив, - 1000 .

Зменшіть розмір буфера передачі до 50 . (Майже кожен сучасний чіпсет підтримуватиме 0 , але деякі - ні, тому з міркувань безпеки ми підемо з 50).

sudo ifconfig eth0 txqueuelen 50

Щоб відновити початкові налаштування:

sudo ifconfig eth0 txqueuelen 1000

Як зауважимо, цей МОЖЕ тимчасово відключити вас від мережі - можливо, вам доведеться змусити ваш пристрій знову підключитися до мережі (відключити кабель відключення / відключення sudo ifconfig eth0 upта ін.)

Коротка версія того, що це робить - TCP очікує, що пакети будуть відмінені та / або не підтверджені своєчасно. При зіткненні з цими ситуаціями він надсилає менше даних для кращої адаптації до мережі. Маючи величезну чергу передачі, черга затримує будь-яку адаптацію, яку зробив би стек TCP, і ви отримаєте ці величезні затримки та погану пропускну спроможність, оскільки ви надсилаєте більше даних, ніж може обробляти мережа. "Цикл зворотного зв'язку" затримується за розміром буферів.

На Windows XP це не впливає, оскільки він має інші обмеження на вихідні дані і не може наситити такі лінії, як Linux та інші більш сучасні ОС.


Гаразд, я не знаю, що сталося. Я спробував це. Інтернет повністю припинився, я злякався і повернувся до 1000. Інтернет швидко розвивався.
Аяуш

FYI - Не зберігається після перезавантаження
Broam

Я щойно зрозумів це, наступного ранку. Як це виправити назавжди?
Аяуш

Я б почав з редагування /etc/rc.local, яке запускається як root.
Брам

4

У мене виникла ця проблема, яку я вирішив, запустивши власний кеш DNS. Це майже напевно пришвидшить справи, хоча хто точно міг би сказати проблему, яку ви маєте? Я не знаю, чи є у вас dnsmasq чи bind9, але спробувати видалити їх не завадить. Тому давайте спробуємо їх видалити, якщо вони є - замінивши їх частиною dnscache djbdns, знищивши будь-який примірник dnsmasq - якщо він працює - та видаливши сценарій запуску BIND - якщо він існує.

sudo apt-get remove bind9 dnsmasq-base
sudo apt-get install djbdns dnscache-run
sudo killall -9 dnsmasq
sudo update-rc.d -f bind9 remove

Тоді нам потрібно сказати системі використовувати наш кеш.

gksu gedit /etc/resolv.conf

Відредагуйте файл, щоб він виглядав таким чином. Цей файл визначає, які сервери імен використовувати, домен за замовчуванням та суфікс пошуку. Суфікс пошуку дозволяє запускати запити, використовуючи лише частину імені хоста повністю кваліфікованого доменного імені. Для прикладу "nslookup www" автоматично перетворюється на "nslookup www.example.com", коли example.com є значенням параметра "пошук".

nameserver 127.0.0.1      # Use the local resolver first.
nameserver 208.67.222.222 # OpenDNS
nameserver 208.67.220.220 # OpenDNS
domain example.com
search example.com

Це трохи фантазії, але нам потрібно отримати найсвіжіші сервери кореневих імен.

sudo dnsip $(dnsqr ns . | sed -e '/answer/!d;s/\(.*\)NS \(.*\)/\2/') | sudo tee /etc/dnscache/root/servers/@

Я думаю, що файл resv.conf перезаписаний, коли ми використовуємо DHCP. Тож давайте надамо собі статичну IP-адресу, видаливши програмне забезпечення, яке її розчавлює, та відредагувавши наш інтерфейсний файл, щоб встановити статичну IP-адресу.

sudo apt-get purge network-manager network-manager-gnome
gksu gedit /etc/network/interfaces

Мій файл інтерфейсів виглядає наступним чином, але змініть ваш до вашої конфігурації.

# Loopback
#
auto lo
iface lo inet loopback

# First network card (attached to NAT router, attached to cable internet)
#
auto eth0
iface eth0 inet static
address 192.168.1.254
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1

Тепер давайте просто перезапустимо.

sudo reboot

Тепер ви використовуєте локальну резолюцію та найновіші кореневі сервери. Це набагато, набагато швидше та надійніше, ніж те, що мені трапляється отримувати від свого провайдера, що так дуже повільно. Чи це допомагає проблемі, що у вас є повільною?

ОНОВЛЕННЯ

Або - якщо ви не хочете запускати власний кеш (вище), і відповідно до розмови нижче, ви можете просто увійти у свій маршрутизатор і налаштувати його для надання альтернативних серверів DNS, таких як Google і OpenDNS: 8.8.8.8, 208.67. 222.222, 208.67.220.220. Це також виправить повільний DNS.


1
1) Навіщо потрібні кореневі сервери dns для кешу DNS ?. Це для мене повний DNS.
Хав'єр Рівера

1
2) Статичний IP, просто щоб уникнути зміни DHCP DNS ?. Хіба це не зайве? Чому ви використовували файл інтерфейсів замість менеджера мережі?
Хав'єр Рівера

3) Windows використовує основний DNS ПЕРШИЙ. Він відновлюється лише до іншого DNS, якщо первинний не працює. Щоправда, це те, що він продовжує користуватися вторинним протягом декількох хвилин.
Хав'єр Рівера

@JavierRivera Добре, що на (1) кореневі сервери змінюються, тому ми хочемо, які з них є поточними; on (2) можливо, ви можете налаштувати мережевий менеджер, щоб він не розчарував файл, але коли він сквош його, ми не можемо використовувати локальний кеш; на (3) дякую! Я стою виправлений.

1) Звичайно, але якщо ви запитуєте кореневий DNS, це не кеш DNS, це лише DNS-сервер. Принаймні ІМХО. (2) Для мене правильним способом є додавання до файлу /etc/dhcp3/dhclient.conf попереднього домену серверів доменних імен 127.0.0.1.
Хав'єр Рівера

1

Я знаю, що це стара тема, але, як я шукав відповідь, так би було й інших, тому я вирішив поставити повідомлення.

У мене була така ж проблема. У Windows все працює нормально, але в ubuntu деякі веб-сайти не відкриються, вічно відкриваються. Я вирішив це, змінивши свій модем з режиму "НАБУТЬ НА ПОТРІБУ" на режим "ВЖЕ ВКЛЮЧЕНО".


0

Відредагуйте /etc/resolv.confфайл, видаліть усе, крім DNS-серверів Google:

nameserver 8.8.8.8
nameserver 8.8.4.4

& перезавантажте комп'ютер.


Зробіть аналіз CURL, щоб з’ясувати, що саме викликає проблеми: https://askubuntu.com/a/147385/378854

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.