Назначение статического IP-адреса для Ubuntu Server 14.04 LTS
Я установил Ubuntu 14.04 LTS Server на свой компьютер на отдельном жестком диске, а также на Windows 7. ОС Windows имеет полное сетевое подключение и доступ к Интернету через Ethernet, а установка Ubuntu - нет.
У меня есть догадка, что это может быть потому, что мой маршрутизатор, который видит 2 разных компьютера с одинаковым MAC-адресом, а DHCP не работает. Как назначить компьютеру общий статический IP-адрес, чтобы оба раздела могли использовать мою сеть? Я новичок в Ubuntu и не могу понять, какой файл редактировать, чтобы назначить статический IP-адрес.
4 ответа
Я не уверен, решит ли это вашу проблему, но это отвечает на ваш вопрос, и я думаю, что стоит попробовать.
Чтобы назначить статический IP, вам нужно отредактировать /etc/network/interfaces
,
Интерфейс, вероятно, будет называться eth0
,
Текущая запись будет выглядеть примерно так:
auto eth0
iface eth0 inet dhcp
Вам нужно будет изменить это на:
auto eth0
iface eth0 inet static
address 10.253.0.50
netmask 255.255.255.0
network 10.253.0.0
gateway 10.253.0.1
dns-nameservers 8.8.8.8
Вам придется менять номера в зависимости от вашей сети, но вы можете узнать информацию, проверив ipconfig
из Windows.
Убедитесь, что вы выбрали адрес вне адресного пространства DHCP-сервера.
Затем перезагрузите сеть sudo service networking restart
, Если это доставляет вам проблемы, перезагрузите машину.
Установите изменения IP-адреса в /etc/network/interfaces
, Пример:
auto eth0
iface eth0 inet static
address 192.168.1.128
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1
Не указывайте свои настройки DNS в /etc/resolv.conf
потому что пока мы перезагружаем сервер, иногда конфигурация стирается.
Так что используйте vim /etc/resolvconf/resolv.conf.d/base
(при обновлении конфигов в этом он не удаляется)
пример:
search (domain name)
nameserver 8.8.8.8
nameserver 8.8.4.4
Сохраните и перезапустите ваш сервер, это исправило мою статическую проблему!:)
Я обнаружил, что должен был включить настройки DNS:
auto lo enp0s25
iface lo inet loopback
iface enp0s25 inet static
address 192.168.1.128
netmask 255.255.255.0
gateway 8.8.8.8.7
dns-search example.com
dns-nameservers 8.8.8.8 8.8.4.4
См. https://help.ubuntu.com/lts/serverguide/network-configuration.html
Измените конфигурацию интерфейсов:
$ sudo nano /etc/network/interfaces
Затем замените следующую конфигурацию:
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto ens160
iface ens160 inet static
# Enter your specific IP address
address 192.168.1.130
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 8.8.4.4
Затем запустите его через:
$ ifdown ens160; ifup ens160
- Вам нужен доступ для этого.
Если вы столкнулись с ошибкой, выполните команду:
$ ip addr flush dev ens160
[ ПРИМЕЧАНИЕ ]:
ens160
мое имя Ethernet, вы можете проверить это через$ ifconfig
команда.- Это работает и проверено в Ubuntu 14.04 и 16.04.
- Вот способ настройки Ubuntu 18.04 .
Ubuntu 20.04 не имеет
/etc/network/interfaces
и использует
/etc/netplan/<config file>.yaml
вместо.
В
.yaml
config создается автоматически и может иметь много имен, но при условии, что
.yaml
расширение должно работать нормально. Мой был
50-cloud-init.yaml
на одной машине,
00-installer-config.yaml
по другому.
Чтобы установить ip на
192.168.0.102
, в
/etc/netplan/<config file>.yaml
:
network:
ethernets:
eth0:
dhcp4: false
addresses: [192.168.0.102/24]
gateway4: 192.168.0.1
nameservers:
addresses: [8.8.8.8,8.8.4.4,192.168.0.1]
version: 2
Вы можете узнать, что использует ваш текущий шлюз
ip route
и вставьте это вместо
192.168.0.1
Также вместо
eth0
вы можете иметь другое имя для своей сети. Если да, оставьте там имя вашей сети.
затем
sudo netplan apply
Это выгнало меня из SSH, потому что я был SSHed через старый ip. Пришлось перезагрузить компьютер вручную. Перезагрузка маршрутизатора также является хорошей идеей для устранения возможных конфликтов IP-адресов.
Также я нашел предложения отредактировать генератор этого файла yaml в
/etc/cloud
но я не нашел надежных документов, как это сделать. Вместо этого Canonical предоставляет https://netplan.io/examples целую кучу конфигураций копирования и вставки для
config.yaml
file, что кажется отличным подходом для большинства случаев.