Добавить Статический внутренный IP для Linux

ravolar 2025-12-09 09:42:09 +02:00
commit a9e30d7fea

@ -0,0 +1,121 @@
Как назначить статический внутренний IP для Ubuntu Взято тут https://gal.vin/posts/2023/ubuntu-static-ip/
запустить команду
`ip a`
Получил вывод
```
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    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: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether f8:b1:56:9b:0b:06 brd ff:ff:ff:ff:ff:ff
    altname enp0s25
    inet 192.168.10.105/24 brd 192.168.10.255 scope global eno1
       valid_lft forever preferred_lft forever
    inet6 fe80::fab1:56ff:fe9b:b06/64 scope link
       valid_lft forever preferred_lft forever
```
Нам нужны название интерфейса eno1 и ip 192.168.10.105 Далее
`cd /etc/netplan/`
далее
`sudo nano /etc/netplan/00-installer-config.yaml`
Создаем файл и сохраняем его
```
# This is the network config written by 'subiquity'
network:
  renderer: networkd
  ethernets:
    eno1:
      addresses:
        - 192.168.10.105/24
      nameservers:
        addresses: [192.168.10.254]
      routes:
        - to: default
          via: 192.168.10.254
  version: 2
```
Еще вот так на сервер Evelina, так как подставлялся как то запасной ip
```
network:
version: 2
renderer: networkd
ethernets:
enp2s0f0:
dhcp4: no
addresses:
- 192.168.10.33/24
nameservers:
addresses: [192.168.10.254]
routes:
- to: 0.0.0.0/0
via: 192.168.10.254
```
Разрешения на файл добавил `sudo chmod 600 /etc/netplan/00-installer-config.yaml`
Применяем изменения - 2 раза делал, чтобы следующий шаг чисто выдал
`sudo netplan apply`
Проверяем
`ip addr show eno1`
`ip route show`
* * *
## Чтобы сервер не терял сеть после перезагрузки роутера
50-cloud-init.yaml добавлял еще и дополнительный динамический адрес и имели проблему
1. **Удалили файл, созданный cloud-init, который включал DHCP и конфликтовал с ручной настройкой:**
```bash
sudo rm /etc/netplan/50-cloud-init.yaml
```
2. **Отключили дальнейшее вмешательство cloud-init в сетевые настройки:**
Создали файл:
```bash
sudo nano /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
```
С содержимым:
```yaml
network: {config: disabled}
```
3. **Применили изменения:**
```bash
sudo netplan generate
sudo netplan apply
sudo systemctl restart systemd-networkd
```
* * *
📌 Это гарантирует, что `cloud-init` больше не будет включать DHCP и перезаписывать конфигурацию сети.