Название утилиты cp — это сокращение от Copy, что означает копировать. Утилита позволяет полностью копировать файлы и директории.
СИНТАКСИС И ОПЦИИ
Общий синтаксис cp выглядит вот так:
$ cp опции файл-источник файл-приемник
Или:
$ cp опции файл-источник директория-приемник/
После выполнения команды файл-источник будет полностью перенесен в файл-приемник. Если в конце указан слэш, файл будет записан в заданную директорию с оригинальным именем.
Утилита имеет несколько интересных опций, которые могут сильно помочь при нестандартных задачах копирования, поэтому давайте их рассмотрим:
—attributes-only — не копировать содержимое файла, а только флаги доступа и владельца;
-f, —force — перезаписывать существующие файлы;
-i, —interactive — спрашивать, нужно ли перезаписывать существующие файлы;
-L — копировать несимволические ссылки, а то на что они указывают;
-n — не перезаписывать существующие файлы;
-P — не следовать символическим ссылкам;
-r — копировать папку linux рекурсивно;
-s — не выполнять копирование файлов в linux, а создавать символические ссылки;
-u — скопировать файл, только если он был изменен;
-x — не выходить за пределы этой файловой системы;
-p — сохранять владельца, временные метки и флаги доступа при копировании;
-t — считать файл-приемник директорией и копировать файл-источник в эту директорию.
Как скопировать файл из одной директории в другую с помощью Linux
Синтаксис для копирования файла с одного места на другое выглядит следующим образом:
cp /source/path/name /target/path/name
Например представьте, что вы имеете следующую структуру папок:
home
andreyex
documents
folder_one
file_one
file_two
file_three
folder_two
file4
Если вы хотите скопировать file_one из текущего местоположения в /home/andreyex/documents/folder_one в /home/andreyex/documents/folder_two, то вы должны ввести следующую команду в командной строке:
Если вы уже в целевой папке вы можете просто заменить путь к цели с полной остановкой.
cp ~/documents/folder_one/file_one
В качестве альтернативы, если вы уже в исходной папке вы можете просто указать имя файла в качестве источника следующим образом:
cp file_one ~/documents/folder_two
Как сделать резервную копию перед копированием файлов в Linux
В предыдущем разделе folder_one содержит файл с именем file_one и folder_two не делает. Представьте себе, что folder_two имеет файл с именем file_one и вы запустили следующую команду:
cp file_one ~/documents/folder_two
Приведенная выше команда перезапишет file_one, который в настоящее время находится в folder_two. Там нет подсказок, нет предупреждения и сообщения об ошибках, потому что, вы указали действительную команду.
Вы можете принять меры предосторожности при копировании файлов в Linux, для создания резервной копии файла, прежде чем он переписывает его. Просто используйте следующую команду:
В папке назначения теперь присутствует файл, который был скопирован и там будет также файл с тильдой (~) в конце, которая является резервной копией оригинального файла.
Вы можете изменить команду резервного копирования для работы в несколько ином виде, так что она создает пронумерованные резервные копии. Вы можете это сделать, если вы уже скопировали файлы и резервные копии уже существуют. Это является одной из форм контроля версий
Имя файла для резервных копий будет меняться: file_one.~1~, file_one.~2~ и т.д.
Как запросить перед перезаписью файлов при копировании в Linux
Если вы не хотите делать резервные копии файлов, лежащих в вашей файловой системе, но вы также хотите, убедиться, что команда копия не перезаписывает файл без разбора вы можете получить приглашение, чтобы показать вопросом, не хотите ли вы перезаписать.
Файл, который копируется в folder3 не будет символической ссылкой. Это на самом деле файл, на который указывает символическая ссылка, так на самом деле вы получите тот же результат, как если бы путем копирования file_one из folder_one.
Кстати вы можете получить тот же результат с помощью следующей команды:
В чем разница между символической ссылкой и жесткой связи?
Символическая ссылка – это ярлык для физического файла. Он не содержит больше, чем адрес на физический файл.
Жесткая связь, на основную ссылку на тот же физический файл, но с другим именем. Это почти как прозвище. Это отличный способ организации файлов, не занимая дальнейшего дискового пространства.
Это руководство расскажет вам все, что вам нужно знать о жестких ссылках .
Вы можете создать жесткую ссылку с помощью команды ср.
cp -l ~/source/file ~/target/file
В качестве примера того, почему вы могли бы использовать жесткую ссылку учесть, что у вас есть папка под названием видео и в этой папке видео у вас есть действительно большой видео файл с именем honeymoon_video.mp4. Теперь представьте, что вы также хотите, чтобы видео быть известным как barbados_video.mp4, потому что он также имеет кадры Барбадоса.
Вы можете просто скопировать файл и дать ему новое имя, но это означает, что вы увеличиваете в два раза больше дискового пространства для того, что, по существу, то же самое видео.
Вы могли бы вместо того, чтобы создать символическую ссылку с именем barbados_video.mp4, которая указывает на файл honeymoon_video.mp4. Это будет работать хорошо, но если кто-то удалил honeymoon_video.mp4 вы остались бы со ссылкой и ничего другого и связь по-прежнему занимает дисковое пространство.
Единственное отличие состоит в том, что они содержат разное количество индексных дескрипторов. (уникальные идентификаторы). Удаление файла honeymoon_video.mp4 не удаляет файл, но только снижает количество для этого файла на 1. Файл будет удален только если все ссылки на этот файл будут удалены.
Чтобы создать ссылку вы могли бы сделать что-то вроде этого:
Как создать символические ссылки с помощью команды ср
Если вы хотите создать символическую ссылку вместо жесткой ссылки вы можете использовать следующую команду:
cp -s /source/file /target/file
Опять же я бы лично вообще используют команду ln -s, но вместо этого работает хорошо.
Как скопировать файлы, если они новее
Если вы хотите скопировать файлы в папку, но только с перезаписью файлов назначения, если исходный файл новее, то вы можете использовать следующую команду:
cp -u /source/file /target/file
Стоит отметить, что если файл не существует на целевой стороне, то копия будет иметь место.
2. Как скопировать несколько файлов
Если вы хотите скопировать несколько файлов одновременно в новое место, вы можете сделать это следующим образом:
cp file1 file2 file3 fileN target_directory
Эта команда скопирует все указанные файлы в целевой каталог. Если в целевом каталоге есть файл(ы), соответствующий имени исходного файла (ов), он будет перезаписан.
3. Несколько способов обработки перезаписи при копировании файлов.
Вероятно, вы не всегда хотите, чтобы ваши существующие файлы целей были перезаписаны, и это абсолютно логично.
Чтобы предотвратить перезапись существующих файлов, вы можете использовать опцию -n. Таким образом, cp выиграл ‘перезаписать существующие файлы.
cp -n source_file target_directory
Но, возможно, вы хотите перезаписать некоторые файлы. Вы можете использовать интерактивную опцию -i, и она спросит вас, хотите ли вы перезаписать существующие файлы.
Вы можете ввести y для перезаписи существующего файла или n, чтобы не переписать его.
Существует также возможность создания автоматических резервных копий. Если вы используете опцию -b с командой cp, она перезапишет существующие файлы, но до этого она создаст резервную копию перезаписанных файлов.
Вы также можете использовать параметр обновления -u, когда имеете дело с перезаписью. С параметром -u исходные файлы будут скопированы только в новое место, если исходный файл более новый, чем существующий, или если он не существует в целевом каталоге.
Подвести итоги:
-i: Подтвердить перед перезаписью
-n: Нет перезаписи
-b: Перезапись с резервным копированием
-u: Перезаписать, если целевой файл устарел или не существует
Как скопировать папки
Копирование папок такое же, как копирование файлов.
Например представьте, что вы имеете следующую структуру папок:
home
andreyex
documents
folder_one
file_one
file_two
folder_two
Представьте, что вы хотите переместить папку folder_one в папку folder_two следующим образом:
Это копирует содержимое folder_one, а также любые суб-каталоги и файлы в пределах подкаталогов.
Копирование файлов и каталогов
В Bash для копирования файлов используется команда cp (от “copy”), которой обычно передаются два аргумента:
адрес с именем исходного файла,
новый адрес с именем или просто адрес каталога, куда помещается копия.
Адрес может быть как абсолютным, так относительным. Если операции с файлами выполняются в текущем каталоге, то указывать адрес смысла нет. Пишется только имя исходного файла и имя копии. Поскольку файлов с одинаковыми именами и адресами быть не может, имя копии должно отличаться от имени исходного файла.
Рассмотрим примеры.
cp readme readme2
В данном случае создается копия файла readme, которая остается в той же директории под именем readme2.
cp readme Desktop/
В папку Desktop копируется файл readme. Здесь текущим является родительский Desktop’у каталог. Имена копии и файла оригинала будут совпадать, а вот полные адреса – нет.
cp/home/irina/tux.png /mnt/D/pingvin.png
Здесь копируется файл из одного каталога в другой, используются абсолютные адреса, имя копии изменяется.
Если надо скопировать несколько разных файлов в один и тот же каталог, то после команды cd сначала перечисляются все файлы-оригиналы, а последним указывается каталог, куда помещаются копии. Понятно, что при таком групповом действии имена файлов изменить нельзя.
Чтобы скопировать каталог со всем его содержимым, необходимо использовать ключ -r команды cp:
cp-r ./letters ./oldletters
Перемещение и переименование
В Bash-оболочке Linux для перемещения и переименования используется одна и та же команда – mv (от “move” – перемещать). Переименование можно рассматривать как частный случай перемещения, ведь по-сути изменяется полный адрес файла, что равносильно перемещению, даже если файл остается в том же каталоге.
Также как в случае cp, для mv необходимо указать пару аргументов. Выбор между перемещением и переименованием зависит от того, что это за аргументы. При перемещении файл меняет свой адрес, следовательно, если в первом и втором аргументах указаны разные адреса, то произойдет перемещение. Если адреса одинаковые, а различаются только имена, происходит переименование. Кроме того, перемещение может быть совмещено с переименованием.
В случае перемещения без переименования во втором аргументе указывается только каталог места назначения.
mv document.txt Work
mv document.txt Work/doc23.txt
Здесь в первом случае файл document.txt перемещается в каталог Work. Во-втором случае одновременно происходит перемещение файла и его переименование: файл document.txt перемещается в директорию Work и получает новое имя doc23.txt.
При использовании команды mv для переименования в качестве второго аргумента указывается новое имя:
mv order.txt orderNew.txt
mv Work/list.odt Work/names.odt
Каталоги перемещаются и переименовываются по тому же принципу, что и файлы. Групповое перемещение файлов работает также, как с командой cp.
Создание файлов и каталогов
Новые директории создаются командой mkdir. Например, чтобы создать каталог Work в текущей директории необходимо выполнить следующую команду:
mkdir Work или mkdir ./Work
Существует множество способов создания файлов, обычно они создаются какой-либо программой. Если все же возникает необходимость создать пустой файл, сделать это можно с помощью программы touch. В качестве аргумента ей передается имя создаваемого файла. Еще один способ – перенаправление вывода какой-либо команды в файл. Пример:
cal> ./Work/January
Здесь программа cal выводит календарь на текущий месяц, а поскольку стоит знак перенаправления вывода, то вывод команды будет записан в файл January, находящийся в папке Work.
Удаление файлов и каталогов
Для удаления файлов используется команда rm. Например:
rm ghost.png
Командой rmdir можно удалить пустой каталог. Если же каталог не пуст, следует использовать команду rm с ключом -r:
Вопросы
У вас в каталоге есть файлы с разными расширениями. Вам надо группу файлов, имеющих одно и тоже расширение, скопировать в другой каталог. Как это сделать одной командой?
Какой ключ надо использовать, чтобы при перемещении случайно не перезаписать уже имеющийся в каталоге файл с таким именем?
Курс с ответами к заданиям и дополнительными уроками: android-приложение, pdf-версия.
Добавить комментарий
6. Как скопировать несколько каталогов
Вы также можете скопировать несколько каталогов одновременно с помощью команды cp в Linux.
Просто используйте его так же, как и для одного каталога.
Фактически, вы можете смешивать каталоги, их содержимое и файлы в целом.
cp -r source_dir1 source_dir2 /. source_file target_dirСоветВы можете использовать подробный режим с опцией -v, чтобы посмотреть, какие файлы копируются.
7. Как сохранить атрибуты при копировании
Когда вы копируете файл в новое место, его атрибуты, такие как права доступа к файлам и временные метки файла, изменяются.
Если вы хотите сохранить атрибуты исходного файла, вы можете скопировать файлы с помощью опции -p.
Давайте посмотрим на пример.
ls -l /etc/services -rw-r – r– 1 root root 19183 12 Jan 2018 /etc/services
Если я попытаюсь скопировать этот файл, его атрибуты будут изменены:
ls -l /etc/services -rw-r–r– 1 root root 19183 Jan 12 2018 /etc/services
Но если мы используем параметр p, скопированный файл сохранит режим, право собственности и отметку времени.
cp /etc/services . ls -l services -rwxrwxrwx 1 andreyex andreyex 19183 Nov 27 23:16 services
Как вы можете видеть, вы сохранили режим доступа и временную метку исходного файла с опцией -p.
Но подождите! Разве это не должно было сохранить право собственности на исходные файлы? Но вот владелец (root) исходного файла был изменен на andreyex,
Это связано с тем, что только root имеет разрешение на изменение права собственности на файл, принадлежащий root. Если вы используете опцию -p с файлом, не принадлежащим root, он сохранит право собственности. Или вы можете запустить команду с помощью sudo, это сохранит право собственности на файл, принадлежащий root.
Вы также можете указать атрибуты, которые хотите сохранить. Но тогда вам придется использовать опцию -preserve.
cp –preserve=timestamp /etc/services . ls -l services -rw-r–r– 1 andreyex andreyex 19183 Jan 12 2018 services
Как видно из вышеприведенного вывода, команда сохранила только временную метку исходного файла.
Примеры, показанные здесь, являются наиболее распространенными, которые вы будете использовать в качестве пользователя Linux, сисадмина или разработчика программного обеспечения.
Если вам понравилась эта статья, пожалуйста, поделитесь этой статьей о социальных сетях и различных форумах.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Перекрёстные ссылки книги для Копирование, перемещение, создание и удаление файлов и каталогов
Команда ls – просмотр каталога
Вверх
Жесткие и символьные ссылки
Linux
Введение в Linux и Bash. Курс
История Linux
GNU GPL
Ядро Linux
Каталоги Linux
Типы файлов Linux
Интерфейс командной строки
Bash – командная оболочка Linux
Параметры команд
Ctrl + C, Ctrl + D, Ctrl + Z
История команд и автодополнение
Перенаправление ввода-вывода
Документация Linux
Абсолютная и относительная адресация. Команда cd
Команда ls – просмотр каталога
Копирование, перемещение, создание и удаление файлов и каталогов
Жесткие и символьные ссылки
Создание ссылок в Linux
Права доступа
Команда chmod – изменение прав доступа
Шаблоны имен файлов
Поиск файлов. Команда find
Команда sudo – администрирование системы
Пакетный менеджер APT
ПРИМЕРЫ КОПИРОВАНИЯ ФАЙЛОВ В LINUX
Теперь, когда вы знаете основные опции можно рассмотреть примеры.Например, мы хотим скопировать некую картинку из домашней папки в подкаталог pictures:
cp ~/pic.png ~/pictures/
Или можем явно указать имя новой картинки:
cp ~/pic.png ~/pictures/wallpaper.png
Копирование папок осуществляется с помощью ключа -r:
cp -R ~/папка ~/Документы/
После выполнения этой команды копирования ~/папка будет скопирована в папку ~/Документы. Главное, не забывайте поставить слэш в конце выражения или использовать опцию -t. Иначе папка ~/документы будет перезаписана.
По умолчанию команда cp linux перезаписывает существующие файлы или папки, но можно заставить утилиту спрашивать нужно ли перезаписывать каждый файл если вы неуверены в правильности составления команды:
cp -i ~/test ~/Documents/test
Есть и противоположная опция -n, означающая никогда не перезаписывать существующие файлы.
Опция -u позволяет копировать файл, только если уже существующий более старой версии, чем новый:
cp -u ~/test ~/Documents/test
cp также поддерживает специальные символы замены * и ?. Например, следующая команда скопирует все файлы, начинающиеся на test:
cp ~/test* ~/Документы/
Если нужно применить более сложные регулярные выражения, придется комбинировать утилиту cp с find или egrep.
В случае если важно сохранить права доступа к файлу и его владельца нужно использовать опцию -p:
cp -p ~/test* ~/Документы/
Для упрощения использования команды можно использовать синтаксис фигурных скобок. Например, чтобы создать резервную копию файла выполните:
$ cp test.conf{,.bak}
Будет создан файл с таким же именем и расширением .bak
По умолчанию в cp не отображается прогресс копирования файла, что очень неудобно при работе с большими файлами, но его можно легко посмотреть с помощью утилиты cv.
Скопировать файл в другую директорию
Скопируем файл myfile.txt в директорию mydir:
cp myfile.txt mydir
Скопируем файл myfile1.txt в новый файл myfile2.txt
cp myfile1.txt myfile2.txt
Скопировать несколько файлов
Для копирования нескольких файлов нужно перечислить их через пробел. Послений параметр определяет результирующую директорию, в которую будут скопированы файлы.
Чтобы скопировать директорию и все ее содержимое нужно использовать опцию -r
cp -r /home/pupkin/mydir /mnt/usbflash
Скопировать только если файлы новее
Скопируем файлы вида myfile*.txt (например, это могут быть файлы myfile1.txtmyfile10.txtmyfile2.txt) в директорию mydir, но если результирующий файл существует, то копирование выполняется только в том случае, если исходный файл новее.
cp -u myfile*.txt mydir
Не перезаписывать существующие файлы
Чтобы существующие файлы не перезаписывались, используется опция -n
cp -n /home/pupkin/mydir /mnt/usbflash
Скопировать только атрибуты
Скопируем только атрибуты файла. Содержимое файла не копируется.
cp –attributes-only myfile1.txt myfile2.txt
Создать резервную копию для результирующих файлов, если они существуют
Скопируем файл myfile1.txt в файл myfile2.txt. Если файл myfile2.txt существует, то будет создана его резервная копия.
cp -b myfile1.txt myfile2.txt
Принудительно перезаписывать существующие файлы назначения
Если файл назначения существует и не может быть открыт и удален, то можно использовать опцию -f, чтобы принудительно перезаписать такой файл:
CURL – это библиотека функций PHP, с помощью которой можно посылать запросы, например, HTTP, из PHP скрипта. CURL поддерживает такие протоколы как HTTP, HTTPS, FTP и другие. Посылать HTTP запросы можно методами GET, POST, PUT.
CURL может пригодиться в случаях когда необходимо вызвать удаленный скрипт и получить результат или просто сохранить HTML код вызываемой страницы, в общем каждый может найти свое применение но смысл один это то что можно послать запросы в процессе выполнения скрипта.
Команда curl
Перед тем как перейти к описанию того как может использоваться команда curl linux, давайте разберем саму утилиту и ее основные опции, которые нам понадобятся. Синтаксис утилиты очень прост:
$ curlопции ссылка
Теперь рассмотрим основные опции:
-# – отображать простой прогресс-бар во время загрузки;
-0 – использовать протокол http 1.0;
-1 – использовать протокол шифрования tlsv1;
-2 – использовать sslv2;
-3 – использовать sslv3;
-4 – использовать ipv4;
-6 – использовать ipv6;
-A – указать свой USER_AGENT;
-b – сохранить Cookie в файл;
-c – отправить Cookie на сервер из файла;
-C – продолжить загрузку файла с места разрыва или указанного смещения;
-m – максимальное время ожидания ответа от сервера;
-d – отправить данные методом POST;
-D – сохранить заголовки, возвращенные сервером в файл;
-e – задать поле Referer-uri, указывает с какого сайта пришел пользователь;
-E – использовать внешний сертификат SSL;
-f – не выводить сообщения об ошибках;
-F – отправить данные в виде формы;
-G – если эта опция включена, то все данные, указанные в опции -d будут передаваться методом GET;
-H – передать заголовки на сервер;
-I – получать только HTTP заголовок, а все содержимое страницы игнорировать;
-j – прочитать и отправить cookie из файла;
-J – удалить заголовок из запроса;
-L – принимать и обрабатывать перенаправления;
-s – максимальное количество перенаправлений с помощью Location;
-o – выводить контент страницы в файл;
-O – сохранять контент в файл с именем страницы или файла на сервере;
-p – использовать прокси;
–proto – указать протокол, который нужно использовать;
-R – сохранять время последнего изменения удаленного файла;
-s – выводить минимум информации об ошибках;
-S – выводить сообщения об ошибках;
-T – загрузить файл на сервер;
-v – максимально подробный вывод;
-y – минимальная скорость загрузки;
-Y – максимальная скорость загрузки;
-z – скачать файл, только если он был модифицирован позже указанного времени;
-V – вывести версию.
Это далеко не все параметры curl linux, но здесь перечислено все основное, что вам придется использовать.
Проверка Версии Curl
Прежде чем мы начнём работать с Curl, нам нужно войти в наш VPS. Если вам нужна помощь, ознакомьтесь с этим руководством по SSH.
Сначала давайте проверим её доступною версию, с помощью следующей команды:
curl –version
В выводе вы должны увидеть версию и список поддерживаемых протоколов. Теперь мы можем взглянуть на некоторые примеры команд Curl.
Основной Синтаксис Команды Curl
Итак, давайте узнаем, как пользоваться утилитой. Основной синтаксис Curl выглядит следующим образом:
curl [OPTIONS] [URL]
Самый простой пример использования Curl — для отображения содержимого страницы. Приведённая ниже команда отобразит домашнюю страницу testdomain.com.
curl testdomain.com
Эта команда отобразит полный исходный код домашней страницы домена. Если протокол не указан, Curl интерпретирует его как HTTP.
Как пользоваться curl?
Мы рассмотрели все, что касается теории работы с утилитой curl, теперь пришло время перейти к практике, и рассмотреть примеры команды curl.
Загрузка файлов
Самая частая задача – это загрузка файлов linux. Скачать файл очень просто. Для этого достаточно передать утилите в параметрах имя файла или html страницы:
Здесь нужно указать количество килобайт в секунду, которые можно загружать. Также вы можете разорвать соединение если скорости недостаточно, для этого используйте опцию -Y:
Загрузка файлов, это достаточно просто, но утилита позволяет выполнять и другие действия, например, отправку файлов на ftp сервер. Для этого существует опция -T:
В ответе утилита сообщит где вы можете найти загруженный файл.
Отправка данных POST
Вы можете отправлять не только файлы, но и любые данные методом POST. Напомню, что этот метод используется для отправки данных различных форм. Для отправки такого запроса используйте опцию -d. Для тестирования будем пользоваться тем же сервисом:
Здесь мы передаем формой поле password, с типом обычный текст, точно так же вы можете передать несколько параметров.
Передача и прием куки
Куки или Cookie используются сайтами для хранения некой информации на стороне пользователя. Это может быть необходимо, например, для аутентификации. Вы можете принимать и передавать Cookie с помощью curl. Чтобы сохранить полученные Cookie в файл используйте опцию -c:
Не всегда нам обязательно нужно содержимое страницы. Иногда могут быть интересны только заголовки. Чтобы вывести только их есть опция -I:
curl -I https://losst.ru
А опция -H позволяет отправить нужный заголовок или несколько на сервер, например, можно передать заголовок If-Modified-Since чтобы страница возвращалась только если она была изменена:
Если на сервере требуется аутентификация одного из распространенных типов, например, HTTP Basic или FTP, то curl очень просто может справиться с такой задачей. Для указания данных аутентификации просто укажите их через двоеточие в опции -u:
Точно так же будет выполняться аутентификация на серверах HTTP.
Использование прокси-сервера
Если вы подключены через прокси-сервер, нужно указать его команде curl при помощи следующих опций (в данном примере имя сервера proxy.yourdomain.com, порт 8080, имя пользователя user, пароль qwerty1234):
Если ваш прокси-сервер не требует аутентификации, опцию -U user:qwerty1234 указывать не нужно.
Команды Curl для HTTP
Curl также можно использовать c прокси-сервером. Если вы находитесь за прокси-сервером, прослушивающим порт 8090 на sampleproxy.com, загрузите файлы, как показано ниже:
В приведённом выше примере вы можете выбросить -U username:password, если прокси-сервер не требует метода аутентификации.
Типичный HTTP-запрос всегда содержит заголовок. Заголовок HTTP отправляет дополнительную информацию об удалённом веб-сервере вместе с фактическим запросом. С помощью инструментов разработчика в браузере вы можете посмотреть сведения о заголовке, а проверить их можно с помощью команды curl.
Пример ниже демонстрирует, как получить информацию о заголовке с веб-сайта.
curl -I www.testdomain.com
Используя curl, вы можете сделать запрос GET и POST. Запрос GET будет выглядеть следующим образом:
Команда содержит запрос POST, за которым следует запрос GET.
Каждый HTTP-запрос содержит агент пользователя, который отправляется как часть запроса. Он указывает информацию о браузере клиента. По умолчанию запрос содержит curl и номер версии в качестве информации об агенте пользователя. Пример вывода показан ниже:
“GET / HTTP/1.1” 200 “_” ”curl/7/29/0”
Вы можете изменить дефолтную информацию об агенте пользователя, используя следующую команду:
curl -I http://mydomain.com –-user-agent “My new Browser”
Теперь вывод будет выглядеть так:
“GET / HTTP/1.1” 200 “_” ”My new Browser”
Команда Curl и Cookies
Утилиту можно использовать для проверки того, какие файлы cookie загружаются по URL. Допустим вы зашли на https://www.samplewebsite.com, вы можете вывести и сохранить файлы cookie в файл, а затем получить к ним доступ, используя команду cat или редактор Vim.
В приведённой выше команде ftp://sampleftpserver — это FTP-сервер, который принимает соединения. Вы можете не указывать имя пользователя и пароль для анонимных FTP-соединений. Введите команду и посмотрите, как заполняется индикатор выполнения.
Вы также можете загружать файлы с помощью этой команды:
Опять же таки, мы можем пропустить имя пользователя и пароль для анонимных FTP-соединений.
Ограничение Скорости Скачивания
Скачивая или загружая данные с помощью Curl, вы не можете знать, насколько большим будет вывод. Вы можете ограничить скорость скачивания, чтобы убедиться, что Curl не ограничивает пропускную способность канала.
Команда ниже ограничивает скорость скачивания до 100К:
Если использовать curl вместе с командой xargs, можно скачивать файлы в соответствии со списком URL, заданном в файле (в данном примере listurls.txt):
$ xargs -n 1 curl < listurls.txt
Отправка файлов cookie на сайт
Полученные в предыдущем примере файлы cookie можно использовать в дальнейших запросах к тому же самому сайту:
$ curl –cookie cookies.txt https://itproffi.ru
Изменение разрешения имен
Если вы веб-разработчик и хотите протестировать локальную версию сайта, прежде чем загружать его на сервер, при помощи опции —resolve можно указать curl выполнять разрешение имени вашего сайта на адрес локального узла, например:
Таким образом, при запросе на http://www.yourdomain.com curl будет запрашивать сайт с локального узла, а не использовать DNS или файл /etc/hosts.
Подключение библиотеки CURL в PHP
Для того чтобы использовать библиотеку CURL ее соответственно нужно подключить.
Примечание!В качестве примера мы будем использовать PHP 5.4.39 на Windows 7, а в качестве Web-сервера у нас будет выступать Apache 2.2.22.
Первое что нужно сделать, это скопировать библиотеки ssleay32.dll, libeay32.dll, libssh2.dll они расположены в директории с PHP, в системный каталог Windows, а именно в C:WindowsSystem32.
Затем в php.ini подключить библиотеку php_curl.dll, т.е. раскомментировать следующую строку
Библиотека не подключена
>;extension=php_curl.dll
Библиотека подключена
extension=php_curl.dll
Все, перезапускаем Apache, вызываем функцию phpinfo() и в случае успешного подключения у Вас должен появиться раздел curl
Если его нет, то это означает только одно, что библиотека не загрузилась, самая распространенная причина этого небыли скопированы вышеперечисленные DLL в системный каталог Windows.
Пример CURL – запрашиваем удаленную страницу для вывода на экран
В данном примере мы просто запросим удаленную страницу по протоколу HTTP методом GET и выведем ее содержимое на экран.
У нас имеется каталог test в нем 2 PHP файла это test_curl.php и test.php, где test_curl.php и есть скрипт где мы будем использовать curl, а test.php удаленный скрипт который мы будем вызывать. Код я подробно прокомментировал.
Код test_curl.php
Код test.php
Заголовок 1н1>»;
break;
case 2:
echo «Заголовок 2н2>»;
break;
case 3:
echo «Заголовок 3н3>»;
break;
}
}
?>
В итоге если вы запустите test_curl.php у Вас выведется на экран надпись «Заголовок 1», можете поэкспериментировать с передачей параметров id (в данном случае 2 или 3).
Пример CURL – вызываем удаленный скрипт и получаем результат
Сейчас давайте попробуем вызвать скрипт и получить результат, для того чтобы потом его обработать, для примера давайте использовать метод POST. Названия файлов оставим такими же.
Код test_curl.php
Код test.php
И если мы запустим test_curl.php то на экран у нас выведется 111, т.е. 1.11 полученное в результате обращения к удаленному скрипту, умноженное на 100.
А теперь давайте поговорим о функциях и константах к ним.
Часто используемые функции CURL и константы
curl_init — Инициализирует сеанс;
curl_close — Завершает сеанс;
curl_exec — Выполняет запрос;
curl_errno — Возвращает код ошибки;
curl_setopt — Устанавливает параметр для сеанса, например:
CURLOPT_HEADER – значение 1 означает, что необходимо вернуть заголовки;
CURLOPT_INFILESIZE — параметр для указания ожидаемого размера файла;
CURLOPT_VERBOSE — значение 1 означает что CURL будет выводить подробные сообщения о всех производимых операциях;
CURLOPT_NOPROGRESS – отключение индикатора прогресса операции, значение 1;
CURLOPT_NOBODY – если Вам не нужен документ, а нужны только заголовки, то поставьте значение 1;
CURLOPT_UPLOAD — для закачки файла на сервер;
CURLOPT_POST – выполнить запрос методом POST;
CURLOPT_FTPLISTONLY — получение списка файлов в директории FTP сервера, значение 1;
CURLOPT_PUT — выполнить запрос методом PUT, значение 1;
CURLOPT_RETURNTRANSFER — возвратить результат, не выводя в браузер, значение 1;
CURLOPT_TIMEOUT – максимальное время выполнения в секундах;
CURLOPT_URL – указание адреса для обращения;
CURLOPT_USERPWD — строка с именем пользователя и паролем в виде [username]:[password];
CURLOPT_POSTFIELDS – данные для POST запроса;
CURLOPT_REFERER — задает значение HTTP заголовка «Referer: »;
CURLOPT_USERAGENT — задает значение HTTP заголовка «User-Agent: »;
CURLOPT_COOKIE — содержимое заголовка «Cookie: », который будет отправлен с HTTP запросом;
CURLOPT_SSLCERT- имя файла с сертификатом в формате PEM;
CURLOPT_SSL_VERIFYPEER – значение 0, для того чтобы запретить проверку сертификата удаленного сервера (по умолчанию 1);
CURLOPT_SSLCERTPASSWD — пароль к файлу сертификата.
curl_getinfo — Возвращает информацию об операции, вторым параметром может выступать константа для указания, что именно нужно показать, например:
CURLINFO_EFFECTIVE_URL — последний использованный URL;
CURLINFO_HTTP_CODE — последний полученный код HTTP;
CURLINFO_FILETIME — дата модификации загруженного документа;
CURLINFO_TOTAL_TIME — время выполнения операции в секундах;
CURLINFO_NAMELOOKUP_TIME — время разрешения имени сервера в секундах;
CURLINFO_CONNECT_TIME — время, затраченное на установку соединения, в секундах;
CURLINFO_PRETRANSFER_TIME — время, прошедшее от начала операции до готовности к фактической передаче данных, в секундах;
CURLINFO_STARTTRANSFER_TIME — время, прошедшее от начала операции до момента передачи первого байта данных, в секундах;
CURLINFO_REDIRECT_TIME — время, затраченное на перенаправление, в секундах;
CURLINFO_SIZE_UPLOAD — количество байт при закачке;
CURLINFO_SIZE_DOWNLOAD — количество байт при загрузке;
CURLINFO_SPEED_DOWNLOAD — средняя скорость закачки;
CURLINFO_SPEED_UPLOAD — средняя скорость загрузки;
CURLINFO_HEADER_SIZE — суммарный размер всех полученных заголовков;
CURLINFO_REQUEST_SIZE — суммарный размер всех отправленных запросов;
CURLINFO_SSL_VERIFYRESULT — результат проверки SSL сертификата, запрошенной с помощью установки параметра CURLOPT_SSL_VERIFYPEER;
CURLINFO_CONTENT_LENGTH_DOWNLOAD — размер загруженного документа, прочитанный из заголовка Content-Length;
CURLINFO_CONTENT_LENGTH_UPLOAD — размер закачиваемых данных;
CURLINFO_CONTENT_TYPE — содержимое полученного заголовка Content-type, или NULL в случае, когда этот заголовок не был получен.
Подробнее о функциях CURL и константах к ним можете посмотреть на официальном сайте PHP — php.net
На этом все, для начинающих я думаю достаточно Удачи!
POST запрос с помощью CURL
Давайте напишем наш первый скрипт, который отправит данные методом POST на какую-нибудь страницу и посмотрит, что отобразилось на этой странице.
Сначала нам нужен файл, который бы принял наши данные и что-то вывел на страницу. Я расположил его по адресу https://intop24.ru/demo/curl/post.php. В нем содержится следующий код:
if (isset($_POST) && sizeof($_POST) > 0) { print_r($_POST); }
Смысл здесь абсолютно такой же, как и в запросе POST.
Файл, который примет данные: https://intop24.ru/demo/curl/upload_file.php.
print_r($_FILES); print_r($_POST);
Теперь попробуем передать туда какие-то данные:
$upload = ‘test_file.jpg’; $postdata = array( ‘name’ => ‘German’, ’email’ => ‘krutovgerman2007@ya.ru’, ‘message’ => ‘Какое-то сообщение от пользователя German’, ‘upload’ => “@”.$upload ); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, ‘https://intop24.ru/demo/curl/upload_file.php’); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $postdata); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30); $output = curl_exec($ch); if ($output === FALSE) { // Тут-то мы о ней и скажем echo “cURL Error: ” . curl_error($ch); return; } print_r($output); curl_close($ch);
Результат можно посмотреть здесь: curl_post_file.php
Загрузка файла – это тот же самый POST-запрос, однако перед путем к файлу стоит знак “@”, что и обозначает, что нужно это передать не как $_POST, а как $_FILES.
HTTP аутентификация с помощью CURL
Довольно полезная штука.
$url = “https://www.site.com/”; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Указываем имя и пароль curl_setopt($ch, CURLOPT_USERPWD, “krutovgerman2007@yandex.ru:mypassword”); // Если перенаправление разрешено curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // То сохраним наши данные в cURL curl_setopt($ch, CURLOPT_UNRESTRICTED_AUTH, 1); $output = curl_exec($ch); curl_close($ch);
DNS расшифровывается как Domain Name System. Это глобальное распределенное хранилище ключей и значений. Сервера по всему миру могут предоставить вам значение по ключу, а если им неизвестен ключ, то они попросят помощи у другого сервера.
Вот и все. Правда. Вы или ваш браузер запрашивает значение для ключа www.example.com, и получает в ответ 1.2.3.4.
Как изменить DNS
Чтобы переопределить DNS заходим в раздел «Центр управления сетями» классической панели управления.
Далее кликаем пункт «Изменение параметров адаптера» и щелкаем активное подключение. Щелкаем его правой кнопкой, переходим к пункту «Свойства».
Выбираем протокол TCP/IPv4, снова щелкаем «Свойства».
Выбираем альтернативный адрес DNS.
Базовые штуки
Большой плюс DNS в том, что это публичная услуга, и можно потыкать в сервера если хочется разобраться. Давайте попробуем. У меня есть домен petekeen.net, который хостится на машине web01.bugsplat.info. Команды, используемые ниже, можно запустить из командной строки OS X (ой, то есть macOS, — прим. пер.).
Давайте взглянем на маппинг между именем и адресом:
$ dig web01.bugsplat.info
Команда dig это такой швейцарский армейский нож для DNS-запросов. Крутой, многофункциональный инструмент. Вот первая часть ответа:
Здесь есть только одна интересная деталь: информация о самом запросе. Говорится, что мы запросили запись и получили ровно один ответ. Вот:
>;; QUESTION SECTION: ;web01.bugsplat.info. IN A
dig по-умолчанию запрашивает A-записи. A это address (адрес), и это один из фундаментальных видов записей в DNS. A содержит один IPv4-адрес. Есть эквивалент для IPv6-адресов — AAAA. Давайте взглянем на ответ:
>;; ANSWER SECTION: web01.bugsplat.info. 300 IN A 192.241.250.244
Тут говорится, что у хоста web01.bugsplat.info. есть один адрес A: 192.241.250.244. Число 300 это TTL, или time to live (время жизни). Столько секунд можно держать значение в кэше до повторной проверки. Слово IN означает Internet. Так сложилось исторически, это нужно для разделения типов сетей. Подробнее об этом можно почитать в документе IANA’s DNS Parameters.
В частности, здесь говорится, как долго сервер откликался, какой у сервера IP-адрес (192.168.1.1), на какой порт стучался dig (53, DNS-порт по-умолчанию), когда запрос был завершен и сколько байтов было в ответе.
Как видите, при обычном DNS-запросе происходит куча всего. Каждый раз, когда вы открываете веб-страницу, браузер делает десятки таких запросов, в том числе для загрузки всех внешних ресурсов вроде картинок и скриптов. Каждый ресурс отвечает за минимум один новый DNS-запрос, и если бы DNS не был рассчитан на сильное кэширование, то трафика генерировалось бы очень много.
Но в этом примере не видно, что DNS-сервер 192.168.1.1 связался с кучей других серверов чтобы ответить на простой вопрос: «куда указывает адрес web01.bugsplat.info?». Давайте запустим трейс чтобы узнать о всей возможной цепочке, которую пришлось бы пройти dig’у, если бы информация не был закэширована:
$ dig +trace web01.bugsplat.info ; <<>> DiG 9.7.6-P1 <<>> +trace web01.bugsplat.info ;; global options: +cmd . 137375 IN NS l.root-servers.net. . 137375 IN NS m.root-servers.net. . 137375 IN NS a.root-servers.net. . 137375 IN NS b.root-servers.net. . 137375 IN NS c.root-servers.net. . 137375 IN NS d.root-servers.net. . 137375 IN NS e.root-servers.net. . 137375 IN NS f.root-servers.net. . 137375 IN NS g.root-servers.net. . 137375 IN NS h.root-servers.net. . 137375 IN NS i.root-servers.net. . 137375 IN NS j.root-servers.net. . 137375 IN NS k.root-servers.net. ;; Received 512 bytes from 192.168.1.1#53(192.168.1.1) in 189 ms info. 172800 IN NS c0.info.afilias-nst.info. info. 172800 IN NS a2.info.afilias-nst.info. info. 172800 IN NS d0.info.afilias-nst.org. info. 172800 IN NS b2.info.afilias-nst.org. info. 172800 IN NS b0.info.afilias-nst.org. info. 172800 IN NS a0.info.afilias-nst.info. ;; Received 443 bytes from 192.5.5.241#53(192.5.5.241) in 1224 ms bugsplat.info. 86400 IN NS ns-1356.awsdns-41.org. bugsplat.info. 86400 IN NS ns-212.awsdns-26.com. bugsplat.info. 86400 IN NS ns-1580.awsdns-05.co.uk. bugsplat.info. 86400 IN NS ns-911.awsdns-49.net. ;; Received 180 bytes from 199.254.48.1#53(199.254.48.1) in 239 ms web01.bugsplat.info. 300 IN A 192.241.250.244 bugsplat.info. 172800 IN NS ns-1356.awsdns-41.org. bugsplat.info. 172800 IN NS ns-1580.awsdns-05.co.uk. bugsplat.info. 172800 IN NS ns-212.awsdns-26.com. bugsplat.info. 172800 IN NS ns-911.awsdns-49.net. ;; Received 196 bytes from 205.251.195.143#53(205.251.195.143) in 15 ms
Информация выводится в иерархической последовательности. Помните как dig вставил точку . после хоста, web01.bugsplat.info? Так вот, точка . это важная деталь, и она означает корень иерархии.
Корневые DNS-сервера обслуживаются различными компаниями и государствами по всему миру. Изначально их было мало, но интернет рос, и сейчас их 13 штук. Но у каждого из серверов есть десятки или сотни физических машин, которые прячутся за одним IP.
Итак, в самом верху трейса находятся корневые сервера, каждый определен с помощью NS-записи. NS-запись связывает доменное имя (в данном случае, корневой домен) с DNS-сервером. Когда вы регистрируете доменное имя у регистратора типа Namecheap или Godaddy, они создают NS-записи для вас.
В следующем блоке видно, как dig выбрал случайный корневой сервер, и запросил у него A-запись для web01.bugsplat.info. Видно только IP-адрес корневого сервера (192.5.5.241). Так какой именно корневой сервер это был? Давайте узнаем!
Флаг -x заставляет dig провести обратный поиск по IP-адресу. DNS отвечает записью PTR, которая соединяет IP и хост, в данном случае — f.root-servers.net.
Возвращаясь к нашему начальному запросу: корневой сервер F вернул другой набор NS-серверов. Он отвечает за домен верхнего уровня info. dig запрашивает у одного из этих серверов запись A для web01.bugsplat.info, и получает в ответ еще один набор NS-серверов, и потом запрашивает у одного из этих серверов запись A для web01.bugsplat.info.. И, наконец, получает ответ!
Уф! Сгенерировалось бы много трафика, но почти все эти записи были надолго закэшированы каждым сервером в цепочке. Ваш компьютер тоже кэширует эти данные, как и ваш браузер. Чаще всего DNS-запросы никогда не доходят до корневых серверов, потому что их IP-адреса почти никогда не изменяются («Наверно все таки речь идет о большом TTL для записей в их базе. Если у DNS сервера IP адрес вообще ни разу не изменялся, то это не означает, что его база навечно закеширована» — прим. от rrrav). Домены верхнего уровня com, net, org, и т.д. тоже обычно сильно закэшированы.
Другие типы
Есть еще несколько типов, о которых стоит знать. Первый это MX. Он соединяет доменное имя с одним или несколькими почтовыми серверами. Электронная почта настолько важна, что у нее есть свой тип DNS-записи. Вот значения MX для petekeen.net:
Заметьте, что MX-запись указывает на имя, а не на IP-адрес.
Еще один тип, который вам скорее всего знаком, это CNAME. Расшифровываетя как Canonical Name (каноническое имя). Он связывает одно имя с другим. Давайте посмотрим на ответ:
Сразу видно, что мы получили два ответа. Первый говорит, что www.petekeen.net указывает на web01.bugsplat.info. Второй возвращает запись A для того сервера. Можно считать, что CNAME это псевдоним (или алиас) для другого сервера.
Зачем нужны DNS-серверы
Система доменных имен функционирует не в виртуальном пространстве, а установлена и работает на определенных физических устройствах. Информация о доменах хранится в форме DNS-записей на множестве специальных компьютерах с соответствующим программным обеспечением. Каждое такое устройство называется сервер доменных имен, а также NS-сервер или DNS-сервер.
Назначение DNS-сервера
Хранение информации о доменах и предоставление ее по запросам;
Кэширования DNS-записей из остальных DNS-серверов.
Классификация серверов
Учитывая функции DNS-сервера, их можно поделить на несколько видов. При этом, сервер-преобразователь или «резолвер» (от англ. Resolver, «преобразователь»), непосредственно конвертирующий доменные имена в IP-адреса, может одновременно принадлежать к двум и более типам.
Ниже представлены определения основных типов DNS-серверов.
Авторитативный — DNS-сервер, который отвечает за определенную зону.
Первичный (Мастер) — сервер, уполномоченный вносить изменения в зону. Как правило, в зоне находится только один первичный сервер.
Вторичный (Слейв) — сервер без права применять изменения в зоны, получающий от «мастера» только уведомления об изменениях. В зоне может находиться неограниченное количество слейвов.
Кэширующий — отвечает за обслуживание пользователей. Он принимает рекурсивные запросы, а затем обрабатывает их с использованием нерекурсивных запросов или передает на вышестоящий сервер. Большинство серверов, работающих непосредственно с пользователями, является именно кэширующими.
Перенаправляющий (Прокси, Балансирующий) — кэширующий сервер, который не отдает данные напрямую, а перенаправляет запросы на связанную с ним цепь кэширующих серверов. Благодаря этому перераспределяется общая нагрузка и уменьшается вероятность даунтайма.
Корневой (Рут) — авторитативный сервер в корневой зоне. В мире расположено 13 таких серверов, их домены находятся в зоне root-servers.net.
Регистрирующий — принимает информацию об обновлениях от пользователей.
Кэширование
Чтобы понимать, как работает DNS-сервер, нужно детально рассмотреть, как в нем происходит процесс кэширования.
При обращениях к любому сайту (даже при переходе на внутренние страницы), серверам необходимо проверять связь домена и IP-адреса. Однако, посещаемый ресурс может храниться довольно далеко, поэтому постоянные запросы на первичный DNS-сервер могут сильно снизить скорость загрузки страниц.
Решить проблему со скоростью обработки запросов позволяет ближайший к компьютеру пользователя DNS-сервер, который становится кэширующим. На нем сохраняется информация о ранее отправленных запросах на IP-адреса. При следующем обращении на один и тот же сайт, данные по его адресу будут поступать оперативно, за счет их наличия в кэше.
Однако, для кэширования нужен источник, с которого будут поступать данные о сайте. Им являются первичные и вторичные DNS-сервера. Это означает, что при регистрации домена владелец сайта должен указывать адрес DNS-сервера, где будет сохранена информация о домене.
Как правило, для работы домена достаточно сохранить свои данные на двух DNS-серверах — первичном и вторичном. Хотя, гораздо лучше указывать большее их количество. Это повысит надежность работы веб-адреса, поскольку при отсутствии доступа к одному DNS-серверу, можно будет обработать запрос на следующем.
Когда и зачем возникает необходимость менять DNS-сервер
По умолчанию DNS-сервер назначается вашим провайдером, но бывают случаи перегрузки, когда конкретному сервису обращается слишком много клиентов. Из-за этого скорость загрузки и передачи пакетов данных может существенно падать. Также некоторые DNS-серверы имеют ограничения в связи с законодательством государства, в котором ведут свою деятельность. Случается, что правительства блокируют даже мировые социальные сети и мессенджеры. В отдельных случаях смена DNS может разрешить доступ к заблокированным ресурсам, а также увеличить скорость загрузки файлов и контента.
Принцип работы DNS-сервера — направить пользователя по правильному адресу интернета
Режим работы DNS
Серверы DNS могут работать в двух режимах:
Итеративный, если сервер отвечает за ту зону для который пришел запрос он присылает ответ, а если нет то он присылает адрес другого сервера, к которому нужно обратиться с запросом.
Рекурсивный, в этом режиме DNS-сервер сам отправляет необходимые запросы всем DNS серверам пока не найдет необходимый сервер, получит от него ответ и этот ответ возвращается к клиенту.
Инфраструктура DNS
Два режима работы необходимы, потому что в системе DNS используются два типа серверов. DNS серверы, которые хранят информацию об отображении доменных имен в ip-адресах, работают в интеративном режиме, так как к этим серверам, особенно к корневым серверам или серверам первого уровня, приходит большое количество запросов, и у них не хватит производительности для работы в рекурсивном режиме.
И есть серверы, которые занимаются разрешением имен для клиентов Эти серверы работают в рекурсивном режиме, получают запрос от клиента, выполняют поиск в дереве серверов DNS, получают ответ и возвращают его клиенту.
Сервер разрешения имен DNS
Сервер разрешения имен находится в локальной сети, он предоставляется либо вашим провайдером, либо вашей организации. Часто адреса таких серверов компьютеры получают автоматически, вместе с ip- адресом по протоколу DHCP.
Другой вариант это использовать открытый сервер разрешения имен, которые предоставляют некоторые компании. Например, широко известен общедоступный DNS сервер компании Google с адресом 8.8.8.8, который может использовать кто угодно. Зачем может понадобиться использовать открытый сервер, вместо серверов вашей локальной сети? Некоторые такие серверы, например, сервер компании Яндекс с таким адресом 77.88.8.7 блокирует контент для взрослых.
Кэширование
После того, как DNS resolver нашел ip-адрес для некоторого доменного имени, он записывает его в кэш, с одной стороны это хорошо так как повышают производительность работы, с другой стороны администратор зоны может поменять ip-адрес для некоторого компьютера, и если он у нас сохранен в кэше, то об изменении мы узнаем только через некоторое время.
Иногда, это время может составлять несколько дней или даже недель в зависимости от настроек DNS resolver. Поэтому не удивляйтесь, если вы внесли изменения в DNS записи, но они пока не видны.
Типы ответов DNS
В DNS есть два типа ответов:
Авторитетный или как пишется в утилите nslookup windows — authoritative «заслуживающий доверие», это ответ, который получен от DNS сервера, который ответственный за данную зону. Ответ получен из конфигурационных файлов на диске сервера, и точно является актуальным.
Неавторитетный (non-authoritative) или «не заслуживающий доверия ответ», это ответ который получен от сервера, который не является ответственным за эту зону. Как правило, это DNS resolver, который закэшировал полученный ранее ответ. С момента создания записи в кэше данные могли измениться, поэтому ответ называется не заслуживающим доверия, но как правило в кэше находятся верные данные.
Протокол DNS
Протокол DNS использует модель клиент-сервер, причем в качестве клиента может выступать, как клиент DNS, так и сервер DNS, которые работают в рекурсивном режиме. В этом случае сервер DNS пересылают запросы другим серверам DNS и выступает в качестве клиента. Взаимодействие ведется в режиме запрос-ответ, соединение не устанавливается, используется протокол UDP, номер порта 53.
Формат пакета DNS
Пакет DNS состоит из двух частей заголовок и данные. Заголовок свою очередь состоит из шести полей.
Первое поле это идентификатор запроса, любое целое число должно быть одинаково в запросе и ответе.
Поле флаги мы его рассмотрим подробнее.
И четыре поля, которые указывают сколько у нас данных в пакете. Количество DNS запросов, количество DNS ответов, количество ответов об авторитетных серверах и количество дополнительных ответов.
В поле данных у нас содержится информация о запросах DNS, где мы указываем доменное имя компьютера для которого хотим узнать ip-адрес.
Ответов DNS в которых содержится ip-адрес необходимого нам компьютера.
Поле авторитетные серверы используется ветеративном режиме работы, здесь указываются ip-адреса серверов, которые отвечают за интересующую нас DNS зону.
И в поле дополнительной информации указываются некоторые дополнительные записи, которые могут быть нам полезны.
В одном и том же DNS пакете может быть несколько запросов DNS и несколько ответов, в том числе несколько ответов на один запрос, если одному доменному имени соответствует несколько ip-адресов.
Флаги
Поле флаги состоит из нескольких полей:
Поле QR — тип операции запрос (0) или ответ (1).
Поле OPCODE (4 бита) — тип запроса, но на практике используются только 0-стандартный запрос.
Флаг AA указывает, является полученный ответ авторитетным (1) или нет (0).
Флаг TC говорит о том был пакет обрезан (1) или не был (0).
Флаг RD указывается только в запросах, если этот флаг установлен, клиент просит сервер работать в рекурсивном режиме.
Флаг RA используется только в ответах, с помощью этого флага сервер сообщает, что он может работать в рекурсивном режиме.
Флаг Z зарезервирован для будущего использования.
RCODE (4 бита) последние четыре бита это статус выполнение операции, статус 0 говорит о том что операция прошла успешно, любые другие коды говорят о том что произошла какая-то ошибка.
Формат запроса DNS
Формат DNS запроса очень простой, содержит имя, тип и класс записи.
Например, имя www.yandex.ru, тип записи 1, (запись типа A) отображение доменного имени в ip- адрес. В системе DNS также используются другие типы записей. Класс записи 1 (IN, Интернет) код единица, других классов записей в системе DNS сейчас не используется.
Формат ответа DNS
Формат DNS ответа более сложный, первые три поля точно такие же имя, тип записи и класс записи. Затем указывается время жизни, это время на которые запись может сохранить в кэше DNS resolver, затем указывается длина данных и собственно данные ответа.
Пример, ответа DNS имя www.yandex.ru, запись типа A, класс записи интернет, время жизни 90 секунд, однако администратор DNS resolver может принудительно установить другое время жизни. Длина данных измеряется в байтах, 4 байта и ip-адрес сервера www.yandex.ru.
Типы записей DNS
До сих пор мы рассматривали единственное применение системы dns это определение IP-адреса по доменному имени компьютера, но кроме этого DNS выполняет много других функций, которые необходимы для работы сети интернет. Для их реализации используются разные типы записей DNS.
Каждая запись dns по-английский (Resource Record, RR) имеет тип записи и класс записи. Тип записей говорит о том для чего эта запись предназначена, а класс указывает в каких сетях эта запись может использоваться. Сейчас DNS применяется только в сетях интернет, поэтому в классе записи вы почти всегда увидите IN, сокращение от интернета.
Записи, которые используются для определения ip адреса компьютера (IPv4) по доменному имени имеют тип A, для адресов IPv6 используется тип запись 4 раза (AAAA ).
Запрос записей разных типов
В утилите nslookup можно указать тип записи, который вы запрашиваете с помощью ключа минус type, например если вы укажете -type=A, нужно узнать Ipv4 адрес для доменного имени www.yandex.ru, то получите адреса ip версии 4.
А если указать тип записей четыре раза A, то получим адрес IPv6 для того же самого доменного имени.
DNS псевдонимы
Для одного и того же IP-адреса можно задавать несколько доменных имен. Есть два варианта, как это можно сделать.
Первый вариант использовать DNS запись типов CNAME (Canonical Name каноническое имя) эта запись определяет псевдоним для доменного имени. Например, доменное имя ftp.zvondozvon.ru является псевдонимом www.zvondozvon.ru, то есть два этих имени указывают на один и тот же IP-адрес. Канонических имен для одного и того же доменного имени можно создавать очень много. Для того чтобы такие имена работали необходимо, чтобы для доменного имени на которые они указывают существовала запись, которая определяет IP-адрес для этого доменного имени.
Альтернативный способ, создать большое количество A записей, которые указывают на один и тот же ip адрес. Но это не всегда удобно, например если вы хотите поменять IP адрес, то вам придется менять его в разных местах. С другой стороны на применение записей типа CNAME есть ряд технических ограничений со стороны системы DNS например, нельзя определять цепочки из канонических имен, которые ссылаются друг на друга, о других ограничениях можно подробно посмотреть в документах RFC, которые описывают работу DNS.
Адрес почтового сервера
Система DNS активно используются при работе электронной почты предположим, что мы хотим отправить электронное письмо на некоторый адрес в домене gmail.com, но как мы узнаем адрес почтового сервера, который принимает почту для этого домена?
Это можно сделать с помощью DNS. Для этого в DNS есть запись специального типа MX (Mail eXechange), например для домена gmail.com есть целых пять записей типа MX, которые задают пять серверов, принимающие почту в домене Google.
Запись MX содержит два поля. Первое поле это приоритет, а второе это адрес сервера принимающего почту для данного домена. Чем ниже значение, тем более высокий приоритет. Самый высокий приоритет у сервера, у которого значение приоритета пять и самый низкий приоритет у сервера со значением 40. Таким образом, при отправке электронной почты сначала будет выбираться сервер с наименьшим приоритетом, если по каким-либо причинам он будет недоступен, следующий сервер и так далее.
Адреса сетевых сервисов
Для некоторых типов сервисов интернет, можно указывать не только IP адрес, но и порт на котором этот сервис работает. Для этого используются DNS записи типа SRV (Service record). Структуры этой записи достаточно сложны, вместо доменного имени указывается строка с описанием сервисов в специальном формате (_сервис._протокол.имя.-˃ приоритет вес порт имя).
Например, если мы хотим узнать на каком компьютере и на каком порту работает jabber сервер работающий по протоколу tcp в домене example.com мы получим вот такую запись (0 5 5269 xmpp.example.com). Проще всего разбирать её с конца. Сервис работает на компьютере с доменным именем xmpp.example.com порт 5269, приоритет 0, вес 5. Так же как и с почтовыми серверами, чем меньше значение приоритета, тем более высокий приоритет у сервера.
Резервный jabber сервер для этого домена работает на компьютере backup_xmpp.xample.com порт 5269 приоритет 20, вес 0. Вес используются для распределения нагрузки между разными серверами, которые имеют один и тот же приоритет.
Делегирование ответственности
В DNS важным понятием является делегирование ответственности. Информация о компьютерах входящая в ту или иную доменную зону хранится на DNS сервере, который отвечает за работу этой зоны. Но нам необходимо знать, какие серверы отвечают за ту или иную зону.
Записи серверов имен
Для этого используются dns-записи типа NS (Name Server). Например, за доменную зону yandex.ru отвечают серверы ns1.yandex.ru и ns2.yandex.ru, а за доменную зону urfu.ru отвечает целых 3 сервера. Записи типа ns задаются на домене более высокого уровня в нашем случае на сервере, который отвечает за зону ru. Именно этот сервер содержит записи ns для домена yandex.ru и для домена urfu.ru.
Но нам недостаточно знать только доменные имена dns-серверов, необходимо знать их IP адреса. Для этого используются «приклеенные» записи А, которые указывают IP-адреса. Вся остальная информация о делегированных доменных зонах хранится на этих dns серверах.
Определение имени по IP-адресу
Кроме определения ip адреса по компьютеру, по доменному имени, система dns может использоваться для обратной задачи определения доменного имени компьютера по его IP адресу. Для этого используются специальные зоны, называются обратные (reverse) или реверсивные.
Реверсивная зона содержит записи типа PTR (Pointer), которые ставят в соответствии IP-адрес компьютера доменному имени. Однако из-за технических ограничений DNS не может работать напрямую с IP адресами, поэтому для обратных зон был придуман обходной путь, представлять IP адрес в виде доменного имени. Для этих целей создан специальный домен in-addr.arpa и в этом домене IP адреса записываются в обратном порядке, например адрес 77.88.55.66 в обратной зоне будет записан следующим образом 66.55.88.77.in-addr.arpa.
Видео про типы записей DNS
Настройка сетевого адаптера для DNS-сервера
Установка DNS-сервера предполагает наличие доменной зоны, поэтому необходимо создать частную сеть в личном кабинете и подключить к ней виртуальные машины.
После того, как машина будет присоединена к двум сетям, важно не перепутать, какое из подключений требует настройки. Первичный сетевой адаптер настроен автоматически с самого начала, через него открыт доступ к интернету, в то время как на дополнительно подключенных сетевых адаптерах доступа в интернет нет, пока не будет произведена ручная настройка:
Наведя курсор на значок сети в системном трее, можно вызвать всплывающую подсказку с краткими сведениями о сетях. Из примера выше видно, что присоединённая сеть это Network 3.
Далее предстоит проделать цепочку действий:
Нажать правой клавишей мыши Пуск, в выпадающем меню выбрать пункт Сетевые подключения;
Правой кнопкой мыши нажать на необходимый сетевой адаптер, в меню выбрать Свойства;
В окне свойств выбрать IPv4 и нажать на кнопку Свойства;
Заполнить соответствующие поля необходимыми данными:
Здесь в качестве предпочитаемого DNS-сервера машина назначена сама себе, альтернативным назначен dns.google [8.8.8.8].
Установка роли DNS-сервера
Для установки дополнительных ролей на сервер используется Мастер Добавления Ролей и Компонентов, который можно найти в Диспетчере Сервера.
На верхней навигационной панели Диспетчера сервера справа откройте меню Управление, выберите опцию Добавить Роли и Компоненты:
Откроется окно Мастера, в котором рекомендуют убедиться что:
1. Учётная запись администратора защищена надёжным паролем.
2. Настроены сетевые параметры, такие как статические IP-адреса.
3. Установлены новейшие обновления безопасности из центра обновления Windows.
Убедившись, что все условия выполнены, нажимайте Далее;
Выберите Установку ролей и компонентов и нажмите Далее:
Выберите необходимый сервер из пула серверов и нажмите Далее:
Отметьте чек-боксом роль DNS-сервер и перейдите Далее:
Проверьте список компонентов для установки, подтвердите нажатием кнопки Добавить компоненты:
Оставьте список компонентов без изменений, нажмите Далее:
Прочитайте информацию и нажмите Далее:
В последний раз проверьте конфигурацию установки и подтвердите решение нажатием кнопки Установить:
Финальное окно Мастера сообщит, что установка прошла успешно, Мастер установки можно закрыть:
Создание зон прямого и обратного просмотра
Доменная зона — совокупность доменных имён в пределах конкретного домена.
Зоны прямого просмотра предназначены для сопоставления доменного имени с IP-адресом.
Зоны обратного просмотра работают в противоположную сторону и сопоставляют IP-адрес с доменным именем.
Создание зон и управление ими осуществляется при помощи Диспетчера DNS.
Перейти к нему можно в правой части верхней навигационной панели, выбрав меню Средства и в выпадающем списке пункт DNS:
Создание зоны прямого просмотра
Выделите каталог Зоны Прямого Просмотра, запустите Мастер Создания Новой Зоны с помощью кнопки Новая зона на панели инструментов сверху:
Откроется окно Мастера с приветствием, нажмите Далее:
Из предложенных вариантов выберите Основная зона и перейдите Далее:
Укажите имя зоны и нажмите Далее:
При необходимости поменяйте название будущего файла зоны и перейдите Далее:
Выберите, разрешить динамические обновления или нет. Разрешать не рекомендуется в силу значимой уязвимости. Перейдите Далее:
Проверьте правильность выбранной конфигурации и завершите настройку, нажав кнопку Готово:
Создание зоны обратного просмотра
Выделите в Диспетчере DNS каталог Зоны Обратного Просмотра и нажатием кнопки Новая зона на панели инструментов сверху запустите Мастер Создания Новой Зоны:
Выберите тип Основная Зона, перейдите Далее:
Выберите назначение для адресов IPv4, нажмите Далее:
Укажите идентификатор сети (первые три октета сетевого адреса) и следуйте Далее:
При необходимости поменяйте название будущего файла зоны и перейдите Далее:
Выберите, разрешить динамические обновления или нет. Разрешать не рекомендуется в силу значимой уязвимости. Перейдите Далее:
Проверьте правильность выбранной конфигурации и завершите настройку, нажав кнопку Готово:
Создание A-записи
Данный раздел инструкции в большей степени предназначен для проверки ранее проделанных шагов.
Ресурсная запись — единица хранения и передачи информации в DNS, заключает в себе сведения о соответствии какого-либо имени с определёнными служебными данными.
Запись A — запись, позволяющая по доменному имени узнать IP-адрес.
Запись PTR — запись, обратная A записи.
В Диспетчере DNS выберите каталог созданной ранее зоны внутри каталога Зон Прямого Просмотра. В правой части Диспетчера, где отображается содержимое каталогов, правой кнопки мыши вызовите выпадающее меню и запустите команду «Создать узел (A или AAAA)…»:
Откроется окно создания Нового Узла, где понадобится вписать в соответствующие поля имя узла (без доменной части, в качестве доменной части используется название настраиваемой зоны) и IP-адрес. Здесь же имеется чек-бокс Создать соответствующую PTR-запись — чтобы проверить работу обеих зон (прямой и обратной), чек-бокс должен быть активирован:
Если поле имени остается пустым, указанный адрес будет связан с именем доменной зоны.
Также можно добавить записи для других серверов:
Добавив все необходимые узлы, нажмите Готово.
Проверка
Проверьте изменения в каталогах обеих зон (на примере ниже в обеих зонах появилось по 2 новых записи):
Откройте командную строку (cmd) или PowerShell и запустите команду nslookup:
Из вывода команды видно, что по умолчанию используется DNS-сервер example-2012.com с адресом 10.0.1.6.
Чтобы окончательно убедиться, что прямая и обратная зоны работают как положено, можно отправить два запроса:
Запрос по домену;
Запрос по IP-адресу:
В примере получены подходящие ответы по обоим запросам.
Можно попробовать отправить запрос на какой-нибудь внешний ресурс:
В дополнение к имени домена и адресам появилась строчка «Non-authoritative answer», это значит, что наш DNS-сервер не обладает необходимой полнотой информации по запрашиваемой зоне, а информация выведенная ниже, хоть и получена от авторитетного сервера, но сама в таком случае не является авторитетной.
Для сравнения все те же запросы выполнены на сервере, где не были настроены прямая и обратная зоны:
Здесь машина сама себе назначена предпочитаемым DNS-сервером. Доменное имя DNS-сервера отображается как неопознанное, поскольку нигде нет ресурсных записей для IP-адреса (10.0.1.7). По этой же причине запрос 2 возвращает ошибку (Non-existent domain).
Как настроить/изменить DNS
Почему DNS-сервер недоступен: как решить проблему
При изменении или дополнительной настройке не потребуется совершать много действий. Необходимо использовать окно, открытое ранее, зайти в пункт «Дополнительно». Здесь производится детальная наладка обращения к DNS-серверам. В Windows 7 это все возможно настроить самостоятельно. Поэтому вопрос, как самим изменить dns-сервер, не вызовет проблем.
Еще для управления доступны DNS-суффиксы. Рядовому пользователю они не требуются. Эта настройка, помогающая удобно разделять ресурсы, создана для провайдеров.
На wi-fi роутере
При использовании роутера в опциях ДНС необходимо выставить его IP-адрес. Чтобы выполнить эти манипуляции, потребуются включенные DNS-relay и DHCP-server.
Интерфейс роутера предназначен для проверки и последующих детальных настроек. Сначала необходимо проверить ДНС в WAN-порте. DNS-relay активируется в параметрах LAN-порта.
На компьютере
Настройка ДНС-сервера в Windows 10 схожа с аналогичной ситуацией в ранних версиях ОС. Сначала нужно выбрать свойства «Протокола интернета версии 4 (TCP/IPv4)». Перейти в дополнительные опции и настроить список серверов.
Настройка сервера ДНС на компьютере и на ноутбуке одинаковая.
На планшете
В зависимости от установленной «операционки» действия несколько различаются, но их все объединяют следующие моменты:
Открыть меню «Wi-Fi», находящееся в «Настройках».
Зайти в свойства текущего подключения к интернету.
Кликнуть «Изменить сеть», после – «Показать дополнительные параметры».
Пролистать до пункта ДНС-серверов, потом их прописать.
На смартфоне
Так как сейчас особой разницы между операционными системами телефона и планшета нет, чтобы настроить нужные dns-серверы, достаточно знать инструкции, описанные выше.
Как узнать прописанный адрес DNS-сервера и как его изменить
Сейчас мировой тренд провайдеров заключается в автоматическом определении DNS-сервера, то есть, его не нужно изначально. Но все же узнать его довольно просто, всего в несколько кликов мышкой.
Windows
Узнать свой DNS-сервер и заменить его можно в соответствующей графе «Панели управления».
Нажимаем комбинацию клавиш Win+R, в поле «Выполнить» прописываем control и запускаем команду в действие кнопкой OK или Enter на клавиатуре.
Запускаем «Панель управления» через исполняющую программу
Меняем вид с «Категории» на «Значки» и щёлкаем по пункту «Центр управления сетями и общим доступом».
Выбираем элемент «Центр управления сетями и общим доступом»
Откроется окно с активными (действующими, подключёнными) сетями. Нажимаем на ссылку напротив той, которая имеет доступ к интернету.
Просматриваем список активных сетей в «Центре управления сетями и общим доступом»
Откроется окно состояния сети. Кликаем кнопку «Сведения…».
В окне «Состояние» нажимаем кнопку «Сведения»
Появится ещё одно окно со всеми данными подключённой сети. В графе «DNS-серверы IPv4» знакомимся с действующими адресами сервисов, которые использует подключение в данный момент.
Просматриваем подключенные DNS-серверы
Заменить DNS-сервер также просто. Для начала возвращаемся в окно «Состояние».
Нажимаем кнопку «Свойства», что в графе «Активность».
Нажимаем кнопку «Свойства», что в графе «Активность»
В окне компонентов выделяем пункт «IP версии 4», после чего нажимаем кнопку «Свойства».
Открываем протокол «IP версии 4»
Откроется последнее окно настроек. Ставим галочку у пункта «Использовать следующие адреса DNS-серверов», прописываем IP-адреса сервисов, которые вы хотите использовать. Затем сохраняем все изменения во всех окнах кнопкой OK.
Чтобы прописать адрес DNS-сервера, ставим галочку на «Использовать следующие адреса DNS-серверов»
В итоге мы имеем доступ к заданному сервису преобразования доменных имён.
Ubuntuк
Чтобы изменить настройки DNS в операционных системах Ubuntu можно пользоваться разными способами. Самый простой — при помощи интерфейса.
В правом верхнем углу выпадающее меню сети. Нажимаем на соответствующий значок, выбираем пункт «Изменить соединение…».
Открываем выпадающее меню сети и нажимаем «Изменить соединение…»
Выбираем активное соединение с интернетом и нажимаем «Изменить».
Выбираем подключение к интернету и нажимаем кнопку «Изменить»
Переходим во вкладку «Параметры IPv4».
Переходим во вкладку «Параметры IPv4»
Меняем фильтр «Способ настройки» на «Автоматически (DHCP, только адрес)».
Меняем фильтр «Способ настройки» на «Автоматически (DHCP, только адрес)»
В графе «Серверы DNS» прописываем нужные адреса через запятую. Затем нажимаем кнопку «Сохранить» и закрываем окно.
В поле «Серверы DNS» прописываем соответствующие адреса
Чтобы узнать нынешний DNS-сервер в ОС Ubuntu, необходимо в терминале ввести команду $ cat /etc/resolv.conf. Это выдаст всю информацию по сети: графа nameserver и содержит доменный адрес.
На роутере
Сразу стоит отметить, что не все модели роутеров дают возможность изменять в своих настройках адрес DNS-серверов. Некоторые устройства позволяют заменить на известные сервисы, к примеру «Яндекс-DNS» или DNS Google.
Для начала необходимо перейти на страницу управления роутером. Для этого в адресной строке любого браузера вводим 192.168.1.1 и нажимаем клавишу Enter.
В зависимости от марки роутера дальнейшие инструкции имеют варианты. В некоторых случаях дополнительные настройки и сведения могут находиться уже на основной странице. Но чаще всего необходимо нажать некую кнопку для перехода в сопутствующее меню. Кнопка может называться Advansed, Setup, «Настройки» и так далее. Нажимаем на эту кнопку, чтобы перейти в дополнительное меню.
На главной странице управления роутером переходим в дополнительные настройки
Зачастую в первой графе сведений уже виден DNS-адрес.
Среди сведений знакомимся с адресом DNS-сервера
Для смены сервиса есть несколько вариантов:
среди пунктов меню может быть «Динамический DNS». Включение этой функции запустит автоматическую смену сервера, если работающий в данный момент по какой-либо причине перестанет отвечать на запросы пользователя. Переставляем галочку в активное состояние или пункт «Включить» и сохраняем изменения;
В некоторых роутерах есть возможность настройки динамического доменного сервиса
В некоторых роутерах уже вписан качественный DNS-сервер от корпораций гигантов, таких как Яндекс или Google. Эти сервисы работают практически без сбоев.
В некоторых роутерах уже вписан качественный DNS-сервер от Яндекс и/или Google
Основные причины возникновения ошибки
Причиной закрытого доступа в Интернет может быть оборудование пользователя или неисправности на другом конце «провода». Рекомендуется провести первичную диагностику, чтобы определить план дальнейших действий. Здесь возможны несколько вариантов:
Доступа нет только к конкретному сайту. Проблема на стороне этого интернет-ресурса. Рекомендуем подождать, пока сервер не восстановит свою работу.
Не работают все сайты на персональном компьютере и мобильных устройствах, подключённых через Wi-Fi. Попробуйте подключить Интернет к ПК напрямую, минуя маршрутизатор. Если доступа не появилось, проблемы могут быть у провайдера. Звоните в техподдержку.
Сайт не работает только на компьютере, а с мобильного и планшета все ресурсы открываются. Здесь уже придется диагностировать ПК с помощью советов, о которых будет рассказано далее.
Способы устранения
Представленные рекомендации актуальны для последних операционных систем Windows 7, 8 и 10.
Общие советы
Прежде чем лезть в настройки операционной системы или роутера, рекомендуем попробовать стандартный «минимум». Используйте другой браузер. Рекомендуем иметь на компьютере стандартный набор из Google Chrome, Opera и Firefox. Это позволит исключить некорректные настройки самого браузера. Попробуйте очистить кэш в настройках. Подробную инструкцию вы можете получить в справке к каждому браузеру.
Следующими шагами идет перезагрузка роутера (при его наличии) и компьютера. Мелкие сбои могут возникать в ходе работы ОС. При перезагрузке многие параметры сбрасываются, устраняя различные сбои. Проверьте свой фаервол или антивирус. Эти программы способны автоматически блокировать доступ к ресурсам, которые они считают потенциально опасными. Если вы уверены, что сайт безопасен (например, вы пытаетесь войти в свой профиль социальной сети), то отключите на время антивирус, а затем попробуйте зайти повторно.
Проблемы на стороне провайдера
Это самый простой вариант, ведь со стороны пользователя никаких действий делать не нужно. Повлиять на ситуацию можно только регулярными звонками в техподдержку. Многие провайдеры предлагают фирменное ПО для диагностики сети, где показывается наличие сигнала и исходящий/входящий трафик. Если у вас имеется такой софт, проверьте через него работоспособность всей сети. При отсутствии трафика, естественно, звоните операторам.
Смена DNS-адресов
Следует сделать небольшой экскурс в тему DNS-сервера для понимания методики исправления ошибки. Когда человек пытается получить доступ к сайту, он вводит его название в поисковой строке или просто нажимает на ссылку из Google или «Яндекс». При этом в сети каждый сайт имеет цифровое обозначение (применяется IP-адресация). Для сопоставления названия сайта с его уникальным IP-адресом используются DNS-сервера. В них хранятся многострочные таблицы, где каждому адресу соответствует IP.
Когда вы пытаетесь зайти на сайт, происходит запрос к такому серверу на выявление соответствия. Если система по каким-либо причинам не получила ответа, появляется уже знакомая вам ошибка. К какому DNS-серверу обратиться, система выбирает самостоятельно, но не всегда корректно. Попробуйте выполнить ручную настройку, четко прописав нужный IP.
В свойствах подключения
Сменить адрес DNS можно через интерфейс Windows. Для этого проделайте ряд действий:
Зайдите в «Центр управления сетями» через иконку Интернета в трее (правый нижний гол).
Кликните по активному адаптеру правой кнопкой мыши, а затем нажмите по строке «Свойства».
Из списка выделите строку IPv4. Нажмите на кнопку «Свойства». Установите активным пункт для ввода адресов вручную и запишите цифры, как это показано на изображении.
Не забудьте подтвердить свои действия, нажав ОК. Это стандартные DNS компании Google. Рекомендуется после выполнения действий перезагрузить компьютер. Если положительного эффекта установка не дала, попробуйте установить DNS в маршрутизаторе.
В настройках роутера
Аналогично интерфейсу «Виндовс» в модеме имеется раздел для ручной установки адресов DNS. Мы приведем инструкцию на примере роутера компании TP-Link:
Зайдите в веб-интерфейс устройства (нужно узнать IP-адрес роутера, логин и пароль для входа на этикетке, прикрепленной к корпусу).
Найдите раздел «Сеть», подраздел WAN. Установите галочку у строки «Использовать следующие настройки DNS». Пропишите адреса, описанные в предыдущем подпункте.
Нажмите кнопку «Сохранить» и перезапустите маршрутизатор.
В этом случае выполнять настройки в ОС не нужно.
Перезапуск службы «DNS-клиент»
В «Виндовс» за работу ДНС отвечает специальная служба. При появлении ошибки поиска сервера рекомендуется перезапустить ее. Делается это в соответствующем разделе по инструкции:
Нажмите ПКМ по иконке вашего Компьютера. Кликните по строке «Управление».
Откройте раздел «Службы».
Найдите в списке DNS-клиент.
Выделите строку и нажмите «Перезапустить».
Убедитесь, что активация службы установлена «автоматически».
Очистка кэша DNS
Многие службы в ходе функционирования создают различные временные файлы – кэш. Как и в браузере, у ДНС его можно почистить. Это выполняется через командную строку. Запустите ее через «выполнить». Вам необходимо ввести cmd, а затем нажать Enter. После этого для очистки кэша DNS введите команду, показанную на изображении.
Если процедура будет выполнена успешно, вы увидите соответствующее сообщение в окне.
Сброс параметров TCP/IP
В редких случаях происходят сбои стека TCP/IP, которые влияют на доступ к Интернету. Через консоль пользователи Windows могут выполнить сброс параметров. Включив командную строку от имени администратора, выполните последовательно две команды:
Если они прошли без сбоя, выполните перезагрузку компьютера, а затем попробуйте заново получить доступ к необходимому сайту.
Отключение антивируса и фаервола
Ранее был предложен вариант с отключением антивируса или фаервола. Рекомендуем попробовать его, но при отключении защиты не посещайте посторонних и сомнительных ресурсов. Встроенная защита Windows не убережет компьютер от заражения. Для деактивации антивируса достаточно зайти в его настройки, а затем отключить все уровни защиты. На изображении пример переключателей для Eset Smart Security.
Отключение стандартного Firewall выполняется через настройки Windows:
перейдите через пуск в «Панель управления»;
найдите раздел брандмауэр Windows;
нажмите на строку «Включение и отключение…»;
деактивируйте пункты, как это показано на картинке.
При наличии антивируса firewall можно отключить навсегда.
Удаление вирусов
Вредоносное программное обеспечение может заблокировать доступ к Интернету и даже вымогать средства. Рекомендуется проверить всю систему на наличие вирусов. Справиться с этой задачей способна бесплатная утилита Dr. Web Cure It. Скачать ее можно на официальном сайте разработчиков антивируса «Доктор Веб». Софт обладает несколькими преимуществами:
портативность (не требует инсталляции, можно использовать прямо с флешки);
проводит анализ, сравнивая подозрительные файлы с многомиллионной базой вирусов;
есть выбор области проверки (оперативная память, временные или системные файлы, конкретный логический диск или весь компьютер).
Будьте готовы, что сканирование большого объема данных может занять сутки или больше. Предварительно закройте все приложения и окна, чтобы не создавать дополнительную нагрузку на систему.
Проверка файла hosts
Некоторые вирусы блокируют доступ или подменяют адреса на ложные через системный файл hosts. Рекомендуем проверить его на наличие посторонних записей. Для этого перейдите по пути, указанном на скриншоте, и откройте файл через текстовый редактор (используйте стандартный «блокнот» или другой).
Стандартный файл без стороннего вмешательства выглядит следующим образом:
Если вы заметили другие строки, то удалите их, а затем сохраните файл.
Удаление недавних обновлений
Последние версии ОС Windows регулярно получают различные обновления, которые улучшают стабильность и безопасность системы. Некоторые из них работают некорректно на определенном «железе». Это приводит к широкому спектру проблем. Если вы точно знаете, какое обновление вызывает неполадки, то можно его удалить следующим образом:
Перейдите в центр управления Windows. Нажмите на гиперссылку журнала обновлений.
В открывшемся окне нажмите строку «Удалить обновления».
Выделите нужное обновление и кликните по «Удалить».
Будьте крайне осторожны, так как без некоторых обновлений у вас не будут работать программы. Также настоятельно не рекомендуется стирать обновления безопасности.
Восстановление системы
Крайние меры, когда ничего не помогает, – выполнить восстановление системы. Эта процедура откатывает состояние ОС до определенного числа (в зависимости от того, когда создавались «точки восстановления»). Все настройки и параметры будут возвращены к той дате, которая будет указана в точке восстановления. Чтобы запустить процесс, вам необходимо сделать следующее:
Перейдите к мастеру восстановления.
Жмите далее до выбора точки. После этого кликните по нужной.
Подтвердите запуск и дождитесь окончания, нажав «Далее» и «Готово».
Пользовательские данные при этом затронуты не будут, однако рекомендуется перед стартом сделать резервную копию важных документов.
Рекомендуется также регулярно раз в месяц или раз в неделю создавать контрольные точки. Это необходимо, чтобы вы имели разброс по времени. Создавать точки можно как автоматически через заданный период, так и вручную. Также пользователь может выбрать логические диски для восстановления. По умолчанию это системный диск (C), но допускается добавить в список и любые другие носители. Дополнительно настройте объем пространства, доступного для утилиты восстановления. В «Виндовс» 10 рекомендуется устанавливать бегунок на уровне не меньше 20 гигабайт.
Если проблема DNS-сервера не связана с провайдером, рекомендуем последовательно опробовать каждый из методов. Все инструкции выполнить в домашних условиях смогут даже неопытные пользователи. Если доступ к Интернет не появился, рекомендуем вызвать специалиста.
Видео: как исправить ошибки, связанные с DNS-сервером
Изменить DNS-сервер просто. В случае необходимости вы сможете без труда восстановить скорость работы любимых сайтов. Пользуйтесь инструкциями выше, и у вас не возникнет никаких проблем с сёрфингом в сети.
Google Public DNS
Пожалуй, самый популярный сервер, работающий уже почти 8 лет. Его адреса известны всем – 8.8.8.8 и 8.8.4.4. Вместе с Google Public DNS ваша безопасность в Сети будет высокой, а скорость серфинга – оптимальной, так как ближайший к вам сервер будет определен с помощью технологии Anycast. Кроме того, этот сервис от Google обладает повышенной устойчивостью к хакерским атакам.
OpenDNS
Служба DNS-серверов, работающая с 2006 года. Имеет платный (корпоративный) и бесплатный (домашний) режимы работы. Домашняя версия также обеспечит родительский контроль и защитит от фишинга. Адреса серверов следующие:
67.222.222;
67.220.220;
67.222.220;
67.220.222.
DNS.WATCH
Очень быстрый и минималистичный сервис DNS, с основным акцентом на скорость работы и на просмотр заблокированных цензурой сайтов. Адреса серверов — 82.200.69.80 и 84.200.70.40.
Level3 DNS
Надежная и производительная DNS-служба. Конечно же, он намного меньше Google, тем не менее, с развитой инфраструктурой серверов скорость вашего серфинга будет максимальной. Level3 доступен по адресам 209.244.0.3 и 209.244.0.4.
Comodo Secure DNS
Эта служба предлагается известным разработчиком программ для защиты компьютера. Система выберет наиболее близкий к вам сервер так, чтобы обеспечить максимально быстрый и безопасный серфинг. Адреса Comodo Secure DNS – 8.26.56.26 и 8.20.247.20.
OpenNIC DNS
Если ваш провайдер ограничивает доступ к сайтам, отличным решением станет установка OpenNIC DNS. Сервис имеет очень большую инфраструктуру, и поэтому перед его использованием вам сначала нужно будет зайти на проекта. Там система подберет наилучшие сервера в зависимости от вашего текущего местоположения.
Yandex DNS
Своя служба DNS есть и у Яндекса. География размещения серверов достаточно широкая, что обеспечивает высокую скорость работы. Имеется три варианта:
Базовый (77.88.8.8 и 77.88.8.1)
Безопасный (88.8.88 и 77.88.8.1) обеспечит дополнительную защиту от вредоносных сайтов;
Семейный (77.88.8.7 и 77.88.8.3)предоставит дополнительную защиту от «взрослых» сайтов.
Norton ConnectSafe
Адреса: 199.85.126.10; 199.85.127.10
Тоже не «просит» предварительную регистрацию, надежно хранит данные пользователя. Создан разработчиками антивируса Norton, не требуя себе дополнительной рекламы.
Вместо послесловия
Каждый из рассмотренных нами DNS-серверов имеет свои плюсы и минусы, и наверняка какой-нибудь вам понравится, и вы будете его использовать. И, напоследок, самое главное – изменив настройки DNS в Windows, обязательно очистите DNS-кэш, иначе вы можете не ощутить сделанных изменений.
MikroTik Hotspot uses various types of login methods. Among these login methods HTTP CHAP, HTTP PAP and HTTPS are basic and important login methods. So, a MikroTik system administrator should have proper understanding on Hotspot HTTP CHAP, HTTP PAP and HTTPS login methods. In my previous article I discussed how to configure MikroTik Hotspot using Winbox. In this article I will discuss how to use HTTP CHAP, HTTP PAP and HTTPS login methods properly in MikroTik Hotspot Server.
Hotspot Login by MAC Cookie
MikroTik Hotspot Login by HTTP CHAP
HTTP CHAP is a basic and default MikroTik Hotspot login method. So, when Hotspot will be configured in MikroTik Router, HTTP CHAP login method will be enabled automatically. HTTP CHAP includes CHAP challenge in the login page. The CHAP MD5 hash challenge is used together with the user’s password for computing the string which will be sent to the Hotspot gateway. The password hash result together with username is sent over network to Hotspot service. So, password is never sent in plain text over IP network with HTTP CHAP method. The downside of HTTP CHAP is that JavaScript applet is used to implement MD5 algorithm on the client side browser. So if a browser does not support JavaScript or it has JavaScript disabled, it will not be able to authenticate users.
How to Enable HTTP CHAP Login Method
HTTP CHAP is a secure Hotspot login method. So, we should use HTTP CHAP login method in Hotspot network. As HTTP CHAP is a default login method in MikroTik Hotspot, no action require to enable HTTP CHAP but make sure HTTP CHAP is enabled and working normally following the below steps.
Login MikroTik Router using Winbox with full permission user.
Go to IP > Hotspot menu item. Hotspot window will appear.
Click on Server Profiles tab and then double click on active server profile. Active server profile property window will appear.
Click on Login tab and make sure HTTP CHAP checkbox is selected from Login By panel. If not selected, click on HTTP CHAP checkbox to enable HTTP CHAP login method and click Apply and OK button.
Enabling HTTP CHAP in MikroTik Hotspot
MikroTik Hotspot Login by HTTP PAP
HTTP PAP sends plain text user name and password over network. So, HTTP PAP is not a secure and suitable for public network. But HTTP PAP is faster and can be used in private network where security is not so much concern.
How to Enable/Disable HTTP PAP Login Method
As there is always possibility to leak username and password using HTTP PAP login method, it is not recommended to use HTTP PAP in public hotspot network. But in private network, we may consider HTTP PAP as a faster login method. The following steps will show how to enable or disable HTTP PAP in Hotspot network.
Go to IP > Hotspot menu item. Hotspot window will appear.
Click on Server Profiles tab and then double click on active server profile. Active server profile property window will appear.
Click on Login tab and make sure HTTP PAP checkbox is not selected if you wish to disable HTTP PAP from Login By panel. By default HTTP PAP is kept disabled.
If you wish to keep HTTP PAP in Hotspot network, click on HTTP PAP checkbox to enable HTTP PAP login method and click Apply and OK button.
Disabling HTTP PAP in Hotspot Network
MikroTik Hotspot Login by HTTPS
HTTPS sends plain text username and password to Hotspot Server but it uses SSL protocol to encrypt transmission. So, although username and password are sent plain text, there is no need worry because transmission is always encrypted in HTTPS communication and there is no chance to leak username and password in public Hotspot network.
HTTPS is one of most secure Hotspot login methods and today there is no alternative of HTTPS login because most of the websites are now using https and without HTTPS login, HTTPS Redirect is not possible. So, HTTPS is now a strongly recommended Hotspot login method.
How to Enable HTTPS Login
HTTPS Login requires enabling HTTPS Server and HTTPS Server requires SSL certificate either self-signed certificate or public SSL certificate. I have another separate article where I discussed how to enable HTTPS Login and HTTPS Redirect with self-signed SSL certificate or public SSL certificate. So, follow that article to configure complete HTTPS Login and HTTPS Redirect.
MikroTik Hotspot Login by HTTP Cookie and MAC Cookie
HTTP Cookie and MAC Cookie are two extended login methods in MikroTik Hotspot. HTTP Cookie and MAC Cookie cannot be used as an individual login method rather we need to use HTTP Cookie and MAC Cookie with HTTP CHAP, HTTP PAP or HTTPS basic login method. By default user must provide username and password in login prompt every time he/she want to get internet access from Hotspot Server. But sometimes user gets annoyed putting username and password frequently. Considering this situation MikroTik introduces HTTP Cookie and MAC Cookie which keep user credential in cookie at first successful login and when the same use appears at second time, the user is verified against this saved cookie and allowed for internet access without asking login prompt.
How HTTP Cookie Works
After each successful login, a cookie is sent to the web browser and the same cookie is added to active HTTP cookie list. Next time the same user will try to log in, web browser will send the saved HTTP cookie. This cookie will be compared with the one stored on the Hotspot Server and only if source MAC address and randomly generated ID matches the ones stored on the Hotspot Server, user will be automatically logged in using the login information (username and password pair) that was used when the cookie was first generated. Otherwise, the user will be prompted to log in, and in the case authentication is successful, old cookie will be removed from the local Hotspot active cookie list and the new one with different random ID and expiration time will be added to the list and sent to the web browser.
How to Enable HTTP Cookie
HTTP Cookie is enabled by default with Hotspot default configuration. But you can check whether HTTP Cookie is enabled or not following the below steps.
Go to IP > Hotspot menu item. Hotspot window will appear.
Click on Server Profiles tab and then double click on active server profile. Active server profile property window will appear.
Click on Login tab and make sure Cookie checkbox is checked if you wish to enable HTTP Cookie.
We can also set HTTP Cookie expiration time from HTTP Cookie Lifetime input box. By default Cookie lifetime is set to 3 days.
Enabling HTTP Cookie in Hotspot Server
How MAC Cookie Works
MAC Cookie is a newly introduced login method in MikroTik Hotspot. MAC Cookie improves accessibility for smartphones, laptops and other mobile devices. MAC Cookie keeps record of username and password for the MAC address if there is only one host with such MAC address. Unlike HTTP Cookie, Cookie is only saved in Hotspot Server at first successful login with MAC Cookie login method. When a new host appears, Hotspot checks if there is a MAC Cookie record for the MAC address and logs in host using recorded username and password.
How to Enable MAC Cookie
MAC Cookie should be enabled both Hotspot Server profile and Hotspot user profile otherwise MAC Cookie will not work. How to enable MAC Cookie has been discussed elaborately in another article. So, follow that article to enable MAC Cookie in Hotspot network properly.
How to enable and configure MikroTik Hotspot basic login methods (HTTP CHAP, HTTP PAP and HTTPS with HTTP Cookie and MAC Cookie) has been discussed in this article. I hope you will now be able to tune Hotspot network with proper login method. However, if you face any confusion to tune Hotspot login methods properly, feel free to discuss in comment or contact me from Contact page. I will try my best stay with you.
Случайное нажатие по клавише Windows на клавиатуре может быть очень раздражающим. Иногда оно выводит вас из полноэкранной игры, открывая меню «Пуск» или непреднамеренно запускает ярлык. К счастью, есть способ отключить ключ на вашем компьютере с Windows 10. Вот как.
Самый простой способ отключить ключ Windows — использовать бесплатную утилиту Microsoft PowerToys. С PowerToys вы можете переназначить любую клавишу, чтобы иметь функцию любой другой . В этом случае мы изменим ключ Windows на «Не определено», что означает, что при нажатии ничего не произойдет.
Чтобы отключить ключ Windows, загрузите Microsoft PowerToys, если он еще не установлен. Запустите PowerToys, нажмите «Диспетчер клавиатуры» на боковой панели, а затем нажмите «Переопределить ключ».
В окне «Remap Keyboard» нажмите кнопку со знаком «+», чтобы добавить определение сопоставления.
Чтобы изменить сопоставление клавиш, вы выбираете ключ, который хотите изменить, в левом столбце, а затем определяете, что вы хотите, чтобы он делал в правом столбце.
Используя выпадающее меню под заголовком «Key:» слева, выберите «Win». В разделе «Сопоставлено» справа щелкните раскрывающееся меню и выберите «Не определено».
Нажмите «ОК», и Windows предупредит вас, что вы не сможете использовать ключ Windows, потому что он не назначен. Нажмите «Все равно продолжить».
После этого ключ Windows должен быть отключен. Ваши настройки были сохранены, и вы можете закрыть PowerToys и использовать компьютер как обычно.
В отличие от других способов переназначения ключей, таких как использование SharpKeys и реестра Windows, вам не придется выходить из системы или перезагружаться, чтобы изменения вступили в силу. Ключ Windows будет немедленно отключен.
Как включить клавишу Windows
Если вы передумали и хотите снова включить ключ Windows, запустите PowerToys и перейдите в «Диспетчер клавиатуры» > «Переопределить ключ».
Найдите сопоставление «Win -> Undefined» и щелкните значок корзины рядом, чтобы удалить ее. Затем нажмите «ОК», чтобы закрыть окно. После этого ваш ключ Windows будет работать нормально.
Хотите знать, как навсегда отключить клавиатуру ноутбука в Windows 10 или как отключить клавиатуру ноутбука при подключении внешней?
Вы пролили чашку горячего кофе на клавиатуру вашего ноутбука? Возможно, пара клавиш перестала работать на клавиатуре, прикрепленной к вашему ноутбуку. Мы все были там.
Если вы сломали клавиатуру ноутбука и ищете лучший способ отключить клавиши клавиатуры ноутбука или хотите узнать, как постоянно отключать клавиатуру ноутбука в ОС Windows 10, тогда не беспокойтесь, это руководство специально создано для таких пользователей, как вы.
В этом руководстве мы покажем вам, как отключить клавиатуру на ноутбуке с операционной системой Windows 10. Мы также ответим на ваши вопросы, например: Можете ли вы отключить клавиатуру ноутбука с помощью стороннего программного обеспечения? Можно ли отключить клавиатуру ноутбука, но только при подключенной внешней? Итак, без лишних слов, давайте погрузимся прямо в.
Как постоянно отключить клавиатуру ноутбука в Windows 10
С поломанными клавиатурами может возникнуть боль, особенно на ноутбуках. И если вы сейчас сталкиваетесь с такой ситуацией, когда клавиатура вашего ноутбука не работает должным образом, вы можете легко отключить или отключить встроенную клавиатуру вашего ноутбука и использовать любую внешнюю клавиатуру, чтобы продолжить работу.
Хотя есть несколько способов отключить клавиатуру ноутбука, но здесь, в этом руководстве, мы расскажем о трех самых простых и лучших способах отключения клавиатуры ноутбука Windows 10, которые мы лично протестировали. Итак, теперь давайте посмотрим, как навсегда отключить клавиатуру ноутбука в операционных системах Windows 10. Вот так:
Внимание: если вы страстный геймер или любитель игр и ищете мощную игровую клавиатуру, то вы можете использовать эти лучшие игровые клавиатуры для PS4, чтобы получить потрясающий игровой опыт.
Способ 1: отключить клавиатуру ноутбука с помощью редактора групповой политики
Когда нужно останавливать переустановку встроенной клавиатуры при каждом запуске ноутбука, включение и ограничение установки устройства с помощью редактора локальной групповой политики является единственным и наиболее подходящим способом.
Это отличный способ для тех, кто хочет навсегда отключить клавиатуру ноутбука в Windows 10. Но вот некоторые важные вещи, которые следует иметь в виду, прежде чем продолжить этот метод и выключить клавиатуру ноутбука:
Подключите внешнюю USB-клавиатуру к ноутбуку, чтобы убедиться, что она действительно работает и совместима с вашим ноутбуком.
Убедитесь, что вы используете Windows 10 Pro или Enterprise, так как редактор локальной групповой политики (gpedit.msc) доступен только для этих вариантов.
Изменение локальных групповых политик не очень рискованно, но и не без риска. Мы рекомендуем вам создать точку восстановления системы, прежде чем двигаться дальше.
Теперь, когда вы знаете предварительное условие, давайте начнем и узнаем, как навсегда отключить клавиши клавиатуры ноутбука, отключив автоматическую установку драйвера с помощью редактора локальной групповой политики Windows 10:
Шаг (1): Сначала удалите любую внешнюю клавиатуру, которую вы, возможно, подключили, а затем приступите к отключению встроенной клавиатуры ноутбука.
Шаг (2): Нажмите клавиши Windows + R вместе, чтобы открыть диалоговое окно «Выполнить» и введите в нем gpedit.msc , а затем нажмите кнопку ОК .
Шаг (3): в окне редактора локальной групповой политики выберите Конфигурация компьютера > Административные шаблоны > Система > Установка устройства > Ограничения установки устройства.
Шаг (4): В окне «Ограничения на установку устройства» щелкните правой кнопкой мыши «Запретить установку устройств, не описанных другими параметрами политики», а затем выберите «Изменить».
Шаг (5): Теперь выберите опцию Enabled и затем нажмите кнопку Apply и OK , чтобы сохранить изменения. Наконец, закройте редактор локальной групповой политики.
После деактивации автоматической установки драйвера с помощью редактора локальной групповой политики теперь пришло время удалить встроенный драйвер клавиатуры с помощью диспетчера устройств.
Шаг (6): Щелкните правой кнопкой мыши кнопку «Пуск» и выберите пункт «Диспетчер устройств» в меню опытного пользователя.
Шаг (7). В окне «Диспетчер устройств» разверните раздел «Клавиатуры», затем щелкните правой кнопкой мыши стандартную клавиатуру PS/2 и выберите параметр «Удалить устройство».
Шаг (8): Когда появится предупреждающее сообщение, нажмите кнопку Удалить , чтобы подтвердить удаление.
Шаг (9): Наконец, нажмите кнопку Да, чтобы завершить процесс удаления и перезагрузить систему.
После перезагрузки системы вы заметите, что клавиатура ноутбука Windows 10 отключена, а встроенные клавиши клавиатуры ноутбука больше не работают. Теперь вы можете подключить внешнюю клавиатуру к ноутбуку, и она начнет работать.
Способ 2. Отключите клавиатуру ноутбука, обновив неправильный драйвер
По мнению многих пользователей, когда речь идет об отключении клавиатуры ноутбука в Windows 10 без использования сторонних утилит или прохождении каких-либо сложных процедур, обновление встроенной клавиатуры с помощью несовместимого драйвера является наиболее подходящим решением. Потому что, когда вы устанавливаете несовместимый драйвер для встроенной клавиатуры вашего ноутбука в операционной системе Windows 10, он перестает работать.
Хотя мы лично не рекомендуем этот метод для отключения клавиш клавиатуры ноутбука, но отчаянные времена требуют отчаянных мер, верно? Просто следуйте приведенным ниже инструкциям и узнайте, как отключить клавиатуру ноутбука Windows 10 с помощью диспетчера устройств:
Важное примечание: если ваш ноутбук использует один и тот же драйвер как для клавиатуры ноутбука, так и для сенсорной панели или трекпада, лучше не вмешиваться в него. На всякий случай держите внешнюю USB-клавиатуру и мышь под рукой.
Шаг (1): Прежде всего, нажмите клавиши Windows + X вместе, а затем выберите Диспетчер устройств в меню опытного пользователя.
Шаг (2). В окне «Диспетчер устройств» разверните раздел «Клавиатуры», затем щелкните правой кнопкой мыши стандартную клавиатуру PS/2 и выберите параметр «Обновить драйвер».
Шаг (3): В окне «Обновление драйверов» выберите «Просмотреть мой компьютер для поиска драйверов».
Шаг (4): Далее выберите опцию «Разрешить мне выбирать из списка доступных драйверов на моем компьютере».
Шаг (5): В следующем окне снимите флажок Показать совместимое оборудование, а затем случайным образом выберите любого производителя (отличного от производителя вашего ноутбука) и выберите любую случайную модель в правой части окна. А затем нажмите на кнопку Далее.
Например: здесь был выбран производитель (стандартные клавиатуры) и модель стандартной клавиатуры PS/2. Теперь мы случайно выбрали другого производителя (ALPS) и другую модель (USB-клавиатуру ALPS).
Шаг (6): когда появится всплывающее окно «Предупреждение об обновлении драйвера», просто нажмите кнопку «Да», чтобы подтвердить установку драйвера.
Шаг (7): После обновления драйвера нажмите кнопку «Закрыть». И, наконец, если вы получите окно с вопросом, хотите ли вы перезагрузить систему. Просто нажмите на кнопку Да.
После перезагрузки ноутбука вы заметите, что встроенная клавиатура вашего ноутбука отключена и больше не работает. Таким образом, вы можете увидеть, как просто отключить клавиатуру ноутбука в операционных системах Windows 10.
Если вы хотите снова включить встроенную клавиатуру в будущем, просто следуйте той же процедуре и обновите драйвер клавиатуры до правильной версии (точного производителя и модели), и встроенные клавиши клавиатуры вашего ноутбука Windows 10 должны начать работать правильно.
Метод 3: Отключить клавиатуру ноутбука с помощью бесплатного программного обеспечения KidKeylock
Являетесь ли вы одним из тех пользователей, которым нужен простой способ отключения клавиш клавиатуры ноутбука Windows 10, и вы не хотите проходить сложный процесс выключения клавиатуры ноутбука с помощью локального редактора групповой политики или диспетчера устройств? Если ваш ответ «Да», то вы можете попробовать стороннее программное обеспечение, чтобы навсегда отключить клавиатуру ноутбука в Windows 10.
Хотя существует множество сторонних приложений, которые позволяют быстро или просто включить или отключить клавиши клавиатуры ноутбука и кнопки мыши. Но если вам нужно бесплатное и надежное решение в один клик, мы рекомендуем использовать бесплатное программное обеспечение Kid Key Lock.
KidKeyLock (также известный как Kid Key Lock или Kid-Key-Lock ) — это сторонняя бесплатная программа, которую можно загрузить в вашу систему. Эта простая и бесплатная утилита позволяет заблокировать функции клавиатуры и мыши всего за несколько секунд. Вы также можете установить пароль, чтобы разблокировать клавиатуру и указатель мыши. Программное обеспечение позволяет заблокировать всю клавиатуру и трекпад или только определенную кнопку, если вы хотите это сделать.
Блокировка клавиатуры для детей Варианты блокировки клавиатуры:
Стандартные символьные клавиши (буквы, цифры, знаки и т.д.)
Дополнительные клавиши (клавиши навигации, функциональные клавиши, ins/del, home/end и т. Д.)
Системные ярлыки Windows (например, alt-tab, win-key и т.д.)
Блокировка клавиш Kid Key Lock:
Левую кнопку мыши
Средняя кнопка мыши
Правая кнопка мыши
Двойной клик
Колесико мыши
Теперь, когда вы знаете, что такое KidKeyLock и что он делает, пришло время двигаться вперед и посмотреть, как навсегда отключить клавиатуру ноутбука в Windows 10 с помощью бесплатной программы KidKeylock. Вот так:
Прежде всего, скачайте бесплатное программное обеспечение KidKeyLock и установите его в своей системе.
После завершения установки откройте это бесплатное программное обеспечение.
Теперь из раздела «Блокировка клавиатуры» переместите ползунок и установите для него значение «Блокировать все клавиши»! вариант.
Наконец, нажмите кнопку ОК , чтобы сохранить изменения. Это оно!
Теперь клавиатура на вашем ноутбуке будет отключена. В случае, если вы хотите заблокировать любую из функций мыши (левую, среднюю или щелчок правой кнопкой мыши, двойной щелчок и колесико мыши), вы можете сделать это в разделе Блокировки мыши.
Вывод — как отключить клавиатуру ноутбука в Windows 10
Вот некоторые из быстрых и удобных методов, которые помогут вам отключить клавиши клавиатуры вашего ноутбука. Надеемся к настоящему моменту на ваш вопрос, как отключить клавиатуру ноутбука Windows 10 ответили. Если у вас есть еще вопросы, связанные с отключением клавиатуры ноутбука, или вы хотите, чтобы мы помогли вам решить другие проблемы с мышью, сенсорной панелью или клавиатурой в операционных системах Windows 10, сообщите нам об этом в комментариях ниже, и мы помочь вам.
Есть ли у вас лучшее решение для этих запросов — вы можете отключить клавиатуру ноутбука, но только когда подключена внешняя клавиатура? Как навсегда отключить клавиатуру ноутбука в операционных системах Windows 10. Если да, то, пожалуйста, поделитесь ими с нами, ваши усилия будут высоко оценены.