Ubuntu Sunucu 18.04'te statik IP kurulumu


29

Bazı insanlar statik ip ayarlamak için dosya hala söyleyerek gördüm /etc/network/interfaces

Ve başkalarının 18.04'te şu an açık olduğunu söylediklerini gördüm /etc/netplan(ki bu insanlar hakkında mutsuz görünüyor)

Bunu koymak denedim:

version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: no
      dhcp6: no
      addresses: [192.168.1.9/24]
      gateway4: 192.168.1.1
      nameservers:
        addresses: [192.168.1.1, 8.8.8.8, 8.8.4.4]

Benim içimde /etc/netplan/50-cloud-init.yamlve yapıyorum sudo netplan applyama bu sadece internet bağlantısına bağlı olan sunucuları öldürüyor.


Masaüstü mü yoksa sunucu mu?
user68186

Bu, yeni bir 18.04 yükleme veya başka bir sürümden yükseltme mi yapıyor?
WinEunuuchs2Unix

Üzgünüm, metinde bunu söylemeliydim, 18.04 sunucusunun yeni kurulumu.
final20

Benim için en basit çözüm, kurulum sırasında (alt ağ, ağ geçidi vb. İle birlikte) statik bir IPv4 adresi belirtmekti . Bazı sihirbaz alanlarını doldurmanız yeterlidir, yapılandırma dosyalarıyla uğraşmanıza gerek kalmaz
Uwe Keim

Bunu yönlendiriciler üzerinde de yapabilirsiniz. Router konfigürasyonunda adımlar açıklamalıdır.
EODCraft Personeli

Yanıtlar:


13

Bu, Ubuntu-Server 18.04'te statik bir IP talimatı ayarlanmıştır.

$ sudo nano /etc/netplan/50-cloud-init.yaml

Ardından yapılandırmanızı, örneğin aşağıdaki satırları değiştirin:

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    ens160:
     dhcp4: no
     addresses: [192.168.1.137/24]
     gateway4: 192.168.1.1
     nameservers:
       addresses: [8.8.8.8,8.8.4.4]

Değişiklikleri uygula:

$ sudo netplan apply

Bazı sorunlara rastlarsanız aşağıdakileri yerine getirin:

$ sudo netplan --debug apply

[ NOT ]:

  • /24 eşittir 255.255.255.0
  • ens160 ethernet adınız, onu kullanarak alabilirsiniz. $ ifconfig
  • Ubuntu 16.04 ve 14.04 ağ arayüzü yapılandırmasının farklı bir yöntemi var.
  • Dosya YAML biçimindedir : Boşluk kullanın, sekme yok.

statik IP adresi atadıktan sonra ping işlemi mümkün değil
user2763554

Tamam .... service networking restart
Yaptıktan

1
Bunu yapmam, çünkü bu dosya CloudInit
Ludovic Kuty

13

/etc/netplan/50-cloud-init.yamlCloudInit kullanıldığından ve bu dosyayı üreteceğinden, doğrudan düzenlemenizi söyleyen tüm yanıtlar yanlıştır. Ubuntu 18.04.2'de dosyanın içine açıkça yazılmıştır:

$ cat /etc/netplan/50-cloud-init.yaml
# This file is generated from information provided by
# the datasource.  Changes to it will not persist across an instance.
# To disable cloud-init's network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
    ethernets:
        eno1:
            dhcp4: true
    version: 2

Bu yüzden, bu dosyayı düzenlememelisiniz, /etc/cloud/cloud.cfg.d/yine de CloudInit kullanmak istiyorsanız, altındaki dosyayı.

Başka bir yol CloudInit'i ilk önce boş bir dosya oluşturarak /etc/cloud/cloud-init.disabled(bkz. Https://cloudinit.readthedocs.io/en/latest/topics/boot.html ) tamamen devre dışı bırakmak ve ardından diğer cevaplar TAMAM. Ubuntu 18.04.2 kapsamında dpkg-reconfigure cloud-initdosyayı hesaba katmak için kullanmak zorunda kaldım /etc/cloud/cloud-init.disabled. Bence bu biraz garip.

Dosyayı yeniden adlandırmanızı öneririm (çünkü 50-cloud-init.yamlhala CloudInit kullandığını düşünmemize izin veren doğru ad değil ).

Ardından /etc/netplan/01-netcfg.yaml, aşağıdaki konfigürasyonu içeren bir dosya adı ile bitebilirsiniz. Yapılandırma bir sunucuda olduğundan , networkdişleyicinin kullanımına dikkat edin NetworkManager.

network:
  version: 2
  renderer: networkd
  ethernets:
    eno1:
      dhcp4: no
      addresses: [192.168.1.246/24]
      gateway4: 192.168.1.1
      nameservers:
         addresses: [192.168.1.1]

2
Harika çalışıyor. Bu en iyi cevap olmalı. 50-cloud-init.yaml belirtildiği gibi değiştirilmemelidir.
Relic

2
Hala CloudInit kullanıyorsanız sudo cloud-init clean -r, değişiklik yapmak için veperr'ın cevabına göre bir değişiklik yapmanız gerekir (en azından benim için Ubuntu Server 18.04.3'te).
Stuart Rossiter

1
... artı renderersatır artık geçerli görünmüyor (ve düzenlediğiniz dosyanın temel sürümünde eksik).
Stuart Rossiter

6

Ubuntu 18.04 şimdi ağ arayüzlerini konfigüre etmek için Netplan kullanıyor, bu yüzden konfigürasyon dosyada yapılmalı /etc/netplan/50-cloud-init.yaml, dokümantasyon artık eski dosyayla uğraşmamanızı tavsiye ediyor /etc/network/interfaces. Bu yapılandırmayı Ubuntu Server sanal makinem ile kullandım ve şu ana kadar çalıştığımda, bilgilerin doğru olduğundan emin olun; Bu optional: trueayar, arayüzün bağlı olup olmadığını doğrulamadan doğrulama yaparak önyükleme süresini hızlandırır, bu varsayılandır, ayrıca kullanılmadıklarını, örneğin DHCP'yi kullanmazlarsa, devre dışı olarak alındıklarını açıklamaya gerek yoktur. Ubuntu Sunucusu'ndaki varsayılan oluşturucu networkdolduğundan, bunu bildirmenize gerek kalmaz. Yazınızdan bilgi almak, şöyle olmalı:

network:
    ethernets:
        eht0:
            addresses:
            - 192.168.1.9/24
            gateway4: 192.168.1.1
            nameservers:
                addresses: [192.168.1.1, 8.8.8.8, 8.8.4.4]
            optional: true
    version: 2

Dosyayı kaydettikten sonra sudo netplan --debug apply, debugbayrağı çalıştırın daha fazla bilgi çıktısı alır ve hataları tespit etmenize yardımcı olabilir. Sanal makine konfigürasyonunu gözden geçiriyorsanız ethernet kablosunu kontrol edin. WLAN kullanıyorsanız, kurulumu biraz daha zor olduğunu okudum ancak bu sunucu sürümüyle henüz WiFi'ye bağlı bir makine kurmadım.

Netplan hakkında daha fazla bilgi istiyorsanız, bir web sitesi var, bazı temel yapılandırma örnekleri var.

https://netplan.io/


5

Config dosyası YAML formatında : Dosyayı yapılandırırken SEKME kullanmayın . Sadece UZAY ile çalışır .

Bu benim sorunumdu.


4

Cloud-init kullanarak başka bir yol buldum.

  1. Dosyayı düzenleyin /etc/cloud/cloud.cfg.d/50-curtin-networking.cfg- içerik / etc / netplan'dakilerle aynı gibi görünüyor.
  2. temizle, yeniden başlat ve cloud-initbu komutla yeniden başlat :

    sudo cloud-init clean -r
    
  3. Bu kadar! Sisteminiz yeniden başlatılacak, cloud-inityeniden başlatılacak ve değişikliği alacak ve /etc/cloud/cloud.cfg.d/50-curtin-networking.cfgbunları uygulayacak /etc/netplan/50-cloud-init.yamlve her şey yoluna girecek. İle doğrulayın ifconfig.


0

Bu, çalışmasını sağlayan ayardır.

$sudo nano /etc/netplan/50-cloud-init.yaml

network:
   ethernets:
     eth0:          
     addresses:
     - 192.168.1.9/24
     dhcp: false
     gateway4: 192.168.1.1
     nameservers:
        addresses:
        - 192.168.1.1
        - 8.8.8.8
        - 8.8.4.4
        search: []
  version: 2  

$sudo netplan apply

sunucuyu yeniden başlat

Bağdaştırıcınıza eth0 değiştirin, ifconfig kullanarak bağdaştırıcınızı bulun.


0

Kullanılabilir ethernet arayüzlerini bulmak için ip link show

Sonra 50-cloud-init.yaml dosyasını kullanarak düzenleyin. $sudo nano /etc/netplan/50-cloud-init.yaml

Eth0: ve eth1 gibi kullanılabilir arabirimler için yapılandırma ekleyin:

network:
   ethernets:
     eth0:          
     addresses:
     - 192.168.1.9/24
     dhcp: false
     gateway4: 192.168.1.1
     nameservers:
        addresses:
        - 192.168.1.1
        - 8.8.8.8
        - 8.8.4.4
        search: []
     eth0:
     addresses:
     - 192.168.1.9/24
     dhcp: false
  version: 2  

Sonra $sudo netplan applydeğişiklikleri uygulamak için komutu kullanın.


0

Ubuntu Sunucu 18.04'te statik IP kurulumu

Sonra 50-cloud-init.yaml dosyasını kullanarak düzenleyin.$sudo vim /etc/netplan/50-cloud-init.yaml


network:
  ethernets:
    eno1:
        addresses:
        - 10.0.1.10/24
        dhcp4: false
        gateway4: 10.0.1.1
        nameservers:
            addresses:
            - 10.0.1.2
            search: []
version: 2

Değişiklikleri uygula:

$ sudo netplan apply


Bunu yapmam çünkü o dosya CloudInit tarafından üretildi.
Ludovic Kuty,

Neden ah, 18.04'te statik bir IP ayarlamaya yönelik her rehber bana kalıcı olmayan bir dinamik olarak oluşturulmuş bir dosya olduğunu söyleyen bir yaml dosyasını düzenlememi söylüyor? Ubuntu geliştiricilerinden gelen, varsayılan olarak işleri kırmanın sorun olmadığını düşünen bir başka zalim şaka ...
Bigtexun

0

18.04'teki ağ yapılandırması netplan üzerinden yönetilir ve cloud-init ile yapılandırılır. Ağ yapılandırmanızı değiştirmek için 50-curtin-networking.cfgdosyayı içinde düzenleyin /etc/cloud/cloud.cfg.d/. Bu dosya yoksa, onu oluşturun.

Arayüz adınızı bulun

ip address show

Cloud-init ağ yapılandırma dosyasını düzenleyin / oluşturun

sudo nano /etc/cloud/cloud.cfg.d/50-curtin-networking.cfg

Statik bir IP adresi ayarlamak için, alt ağ önek uzunluğu (örneğin / 24) ile birlikte adresleri (IPv4 veya IPv6) içeren adresler tuşunu kullanın. Ağ geçidi ve DNS bilgileri de sağlanabilir:

network:
  version: 2
  ethernets:
    eth0:
      addresses:
        - 192.168.1.9/24
      gateway4: 192.168.1.1
      nameservers:
          addresses: [192.168.1.1, 8.8.8.8, 8.8.4.4]

Daha fazla yapılandırma seçeneğini https://netplan.io/examples adresinde bulabilirsiniz.

Cloud-init yapılandırmasını yeniden yükleyin. Bu sunucunuzu yeniden başlatır.

sudo cloud-init clean -r
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.