Узнаем имя компьютера в сети
Содержание:
A note about hostnamectl command
Systemd based Linux distributions such as CentOS 8 can simply use the hostnamectl command to rename hostname. To see current setting just type: Sample outputs:
Static hostname: localhost.localdomain Transient hostname: li2025-143.members.linode.com Icon name: computer-vm Chassis: vm Machine ID: 3e729c2d7c094902af0333ce40564ffe Boot ID: e359e65f68ff45f2825134354bdc0a8d Virtualization: kvm Operating System: CentOS Linux 8 (Core) CPE OS Name: cpe:/o:centos:centos:8 Kernel: Linux 4.18.0-80.7.1.el8_0.x86_64 Architecture: x86-64 |
To change hostname from localhost.localdomain to nixcraft-centos8, enter:
Set or change CentOS 8 server hostname using the hostnamectl command
What is a Hostname?
Basically, the hostname is a name assigned to a computer within a network. Many network services use the hostname as a computer identifier. On the other hand, the hostnames are made more for the user, than the network, since the later identifies devices by their IP address. Therefore, the hostname is an identifier designed to make work easier for people, not for the computer.
Although it is a simple concept to learn, many people are often confused by it.
In public networks such as the Internet, the hostname has to be combined with the domain name. This indicates which “mini zone” of the Internet it is on. For example:
server1.example.com
In this case, server1 is the hostname of the computer we want to access, and example is the domain. Finally, .com is considered the top-level domain.
These identifiable names are called “Fully Qualified Domain Names” (FQDN) and include the name of the computer and the domain name associated with that computer.
There are no restrictions on placing a Hostname on a private network. However, in the case where the computer has access to the Internet, it has to be combined with a domain.
# Как настроить статический IP-адрес в CentOS 7
Итак, вы хотите посмотреть настройки сети, но вы устанавливали сборку «minimal» то по привычному запросу ifconfig вы в ответ получите вот такое:
-bash: ifconfig: command not found
Это говорит нам о том, что у нас нет такого пакета. Для работы его работы и прочими сетевыми утилитами нужно установить пакет net-tools. Для этого выполним следующую команду:
# yum -y install net-tools.x86_64
Теперь попробуем снова ввести ifconfig:
# ifconfig eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 172.16.0.160 netmask 255.255.255.0 broadcast 192.168.146.255 inet6 fe80::250:56ff:fe24:ccd6 prefixlen 64 scopeid 0x20<link> ether 00:50:56:24:cc:d6 txqueuelen 1000 (Ethernet) RX packets 210 bytes 19072 (18.6 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 71 bytes 11531 (11.2 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 0 (Local Loopback) RX packets 4 bytes 340 (340.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 4 bytes 340 (340.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Если вы не хотите устанавливать дополнительные пакеты или на данном этапе у вас не работает сеть/интернет, то можно воспользоваться командой ip с параметром addr:
# ip addr 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eno16777736: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:50:56:24:cc:d6 brd ff:ff:ff:ff:ff:ff inet 172.16.0.160/24 brd 192.168.146.255 scope global dynamic eno16777736 valid_lft 1672sec preferred_lft 1672sec inet6 fe80::250:56ff:fe24:ccd6/64 scope link valid_lft forever preferred_lft forever
Тут мы увидели наши параметры, название нашей сетевой карты. В моем случае — eno16777736, и IP адрес.
# cat ifcfg-eno16777736 TYPE=Ethernet BOOTPROTO=dhcp DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=no IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_FAILURE_FATAL=no NAME=eno16777736 UUID=dc1636be-5281-4a07-8681-fcdc8b161c8c DEVICE=eno16777736 ONBOOT=no PEERDNS=yes PEERROUTES=yes
Для установки статического IP адреса нам необходимо на строчке BOOTPROTO установить BOOTPROTO=none
и дописать:
Указать ДНС:DNS1=8.8.8.8
Прописываем IP:IPADDR0=172.16.0.30
Указываем нужную маску:PREFIX0=24
Прописываем шлюз по умолчанию:GATEWAY0=172.16.0.1
И чтобы у нас сетевая карта «поднималась» при запуске ОС, необходимо в этом файле найти параметр ONBOOT и прописать ему yes.
В итоге у нас должно получится что то типа этого:
Для немедленного применения изменений перезапустим сеть:
# /etc/init.d/network restart
Проверяем, все ли мы сделали верно:
# ifconfig eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 172.16.0.30 netmask 255.255.255.0 broadcast 172.16.0.255 ether 00:50:56:24:cc:d6 txqueuelen 1000 (Ethernet) RX packets 5039 bytes 360189 (351.7 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 1015 bytes 181656 (177.3 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Видим что наши параметры применились. Значит все было сделано верно.
Как отключить ipv6
В настоящее время активного использования протокола ipv6 в России нет и в обычной работе он чаще всего не нужен. Хотя нас уже много лет пугают, что свободных ip адресов уже практически не осталось, но на деле пока еще всем хватает. Так что с точки зрения практических соображений ipv6 в настоящее время на сервере не нужен и его можно отключить.
Перед отключением ipv6 в centos необходимо на всякий случай проверить, какие программы его используют в своей работе. Это нужно для того, чтобы избежать ошибок в их работе, предварительно отключив ipv6 в конфигурациях. Для того, чтобы увидеть, какие программы висят на ipv6 интерфейсе воспользуемся командой netstat:
Все строки с ::: это ipv6 протокол. В моем случае это sshd, postfix и chronyd. Отключим им ipv6 и оставим только ipv4.
Начнем с sshd. Открываем файл настроек /etc/ssh/sshd_config и находим строки:
Раскомментируем их и изменим. Должно получиться вот так:
Теперь открываем файл настроек постфикс /etc/postfix/main.cf. Ищем там строку:
Меняем на:
Отключаем ipv6 в chronyd. Для этого создаем файл /etc/sysconfig/chronyd и добавляем строку:
Теперь отключаем ipv6 в CentOS. Открываем файл /etc/sysctl.conf и добавляем туда строки:
Редактируем файл /etc/sysconfig/network, добавляя туда:
Добавляем запрет на работу ipv6 в конфигурацию grub. Открываем конфиг /etc/default/grub и добавляем к параметру GRUB_CMDLINE_LINUX еще одно значение ipv6.disable=1. Должно получиться примерно так:
После этого обновляем конфиг загрузчика.
Перезагружаемся и проверяем результат:
Нигде нет упоминания про inet6 и адреса формата ipv6. Значит все в порядке, мы отключили ipv6 в CentOS. Теперь проверим список открытых портов:
Все порты ipv4. Все в порядке, наша задача выполнена.
Имена сетей: файл /etc/networks
В файле /etc/networks хранятся доменные имена и
IP-адреса сетей, с которыми у вашей системы есть соединение, а не доменные имена конкретных
компьютеров. Сети имеют сокращенные IP-адреса. В зависимости от типа сети в IP-адресах может
использоваться одно, два или три числа. Сетевой IP-адрес для — 127.0.0.0
. Этот сетевой адрес используется для закольцовывающего устройства.
IP-адреса записываются в файле /etc/networks вместе
с соответствующими им доменными именами сетей. Вспомните, что IP-адрес состоит из сетевой части
и машинной части. Сетевая часть — это адрес сети, который хранится в файле
networks. В этом файле всегда будет присутствовать отдельная запись для сетевой части
IP-адреса вашего компьютера. Это и есть адрес сети, к которой подключен ваш компьютер.
loopback 127.0.0.0 trek.corn 199.35.209.0 |
Узнаем имя ПК в сети
Мы рассмотрим как системные средства, доступные по умолчанию в каждой версии Windows, так и специальную программу.
Способ 1: Специальный софт
Существует немало программ, позволяющих узнать имя и прочую информацию о компьютерах, подключенных к одной локальной сети. Мы же рассмотрим MyLanViewer – софт, позволяющий просканировать сетевые подключения.
- Загрузите, установите и запустите программу. Использовать ее можно бесплатно лишь на протяжении 15 дней.
Перейдите на вкладку «Scanning» и на верхней панели кликните по кнопке «Start Fast Scanning».
Будет представлен список из адресов. В строке «Your Computer» кликните по иконке с изображением плюсика.
Нужное вам имя располагается в блоке «Host Name».
По желанию вы можете самостоятельно изучить прочие возможности программы.
Способ 2: «Командная строка»
Узнать имя компьютера в сети можно с помощью «Командной строки». Этот способ позволит вам вычислить не только наименование ПК, но и другую информацию, например, идентификатор или IP-адрес.
- Через меню «Пуск» откройте «Командную строку» или «Windows PowerShell».
После имени пользователя добавьте следующую команду и нажмите клавишу «Enter».
В одном из блоков «Подключение по локальной сети» найдите и скопируйте значение «IPv4-адрес».
Теперь в пустую строку впишите следующую команду и через пробел добавьте скопированный IP-адрес.
Вам будет представлено имя компьютера в локальной сети.
Дополнительную информацию можно узнать, воспользовавшись указанной ниже командой и добавив после нее IP-адрес нужного ПК в сети.
Нужная информация размещена в блоке «Таблица NetBIOS-имен удаленных компьютеров».
Если необходимо узнать наименование вашего ПК в сети, можно ограничиться специальной командой.
Способ 3: Изменение имени
Наиболее простой метод вычисления имени заключается в просмотре свойств компьютера. Для этого кликните правой кнопкой мыши по кнопке «Пуск» и в списке выберите пункт «Система».
После открытия окна «Система» нужная вам информация будет представлена в строке «Полное имя».
Здесь же можно узнать и другие данные о компьютере, а также по необходимости их отредактировать.
Подробнее: Как изменить имя ПК
Часто задаваемые вопросы по теме статьи (FAQ)
Стоит ли удалять NetworkManager?
Все зависит от конкретной ситуации. Я чаще всего удаляю, потому что мне его функционал не нужен. В подавляющем большинстве случаев, я настраиваю сеть в centos один раз во время установки сервера. Какой мне смысл оставлять NM в системе и постоянно его обновлять? Тем не менее Redhat настоятельно рекомендует использовать NetworkManager для настройки сети и в этом есть определенный смысл. К примеру, если вы будете проходить сертификацию, то вам 100% нужен будет этот инструмент, так как с его помощью можно быстрее настроить сеть и вероятность ошибки будет минимальной. Так что решайте сами по месту, нужен вам Network Manager или нет.
Есть ли разница в том, как настраивать hostname, через правку файла или команду hostnamectl?
Принципиальной разницы нет. Результат будет один и тот же.
Как настроить proxy в centos?
Централизованно для всей системы настроить proxy не получится. Для каждой службы нужно это делать отдельно — yum или dnf, браузер и т.д.
Нужно ли отключать ipv6 в системе?
Я реализую такой подход в настройке системы — отключать все, что не используется. Это повышает надежность и безопасность системы. Поэтому если вы не используете ipv6 в работе, рекомендую его отключить.
Хост-таблицы.
Хост-таблица — это файл ASCII, сопоставляющий имена хост-узлов с их адресами IP. Он является отображением Telnet. Например, вводя команду telnet асст-2, Telnet обращается к хост-таблице, чтобы найти отдельное имя хост-узла и связать его с адресом IP.
На сервере NT файл хост-таблицы находится в каталоге \systemroot\SYSTEM32\DRIVERS\ETC, а в системе UNIX — в каталоге /etc/hosts.
Формат хост-таблицы:
IPAddress HostName Aliases Comments ( ).
Важные правила компьютерного синтаксиса для хост-таблиц:
- Элементы записи могут разделяться любым числом пробелов и/или символов табуляции.
- Символ # обозначает начало комментария.
- Любое программное обеспечение, обращающееся к хост-таблице, не считывает запись, следующую за символом #.
IP-адрес | Имя хост-узла(псевдоним , комментарий). |
---|---|
167 . 31 . 78 . 2 | ACCT-2 |
132 . 90 . 4 . 11 | SALES-AS400 SALES |
171 . 110 . 64 . 73 | VAX- ADM |
110 . 20 . 51 . 3 | ACME #Located in Chicago. |
127 . 0 . 0 . 1 | LOCAL HOST #Loopback |
Другим файлом, аналогичным хост-таблице, является сетевая таблица, содержащая имена и адреса сетей, которые нужно «знать» конкретному программному обеспечению. В системе UNIX она расположена в каталоге /etc/networks. В этом файле, как и в хост-таблице, все, что следует за символом # считается комментарием.
Формат сетевой таблицы:
NetworkName NetworkAddress Aliases ( ).
Поскольку элементы сетевой таблицы относятся к целым сетям, они обозначают только сетевые части адресов IP. Соответственно элементы хост-таблицы обозначают целые адреса IP отдельных хост-узлов.
Step #2: Update /etc/hosts
Now, you need to edit /etc/hosts file, enteR:
vi etchosts |
Change all old hostname with newer one.
This entry is 4 of 18 in the Linux/Unix Set hostname Tutorial series. Keep reading the rest of the series:
- Ubuntu Linux Change Hostname (computer name)
- Debian Linux: Change Hostname / Computer Name Permanently
- Linux change my hostname / computer system name
- Linux Change Hostname
- RHEL / Centos Linux 7: Change and Set Hostname Command
- OpenBSD Change Hostname
- CentOS Linux 5/6 Change Hostname Command
- Linux setting hostname and domain name of my server
- FreeBSD Change Hostname without reboot
- SuSe Linux Change Hostname without reboot
- How to set the hostname on Fedora Linux
- Ubuntu 18.04 LTS change hostname permanently
- Ubuntu set hostname permanently (computer name) command
- OpenSUSE Linux set hostname permanently (computer name) command
- RHEL 8 Linux set hostname permanently (computer name) command
- CentOS 8 Linux set hostname permanently (computer name) command
- Ubuntu 20.04 LTS set hostname permanently (computer name) command
- Set / Change FQDN on Ubuntu 20.04 LTS