私はLinuxの初心者で、Windowsサーバー/デスクトップで長年の経験があり、静的IPの設定に問題があります。 Ubuntuの以前のバージョンで使用されている方法を使用していますが、16.04では機能しないようです
コマンドSudo nano /etc/network/interface
を使用し、次を追加しました
iface enp0s25 inet static
address 10.10.8.2
netmask 255.255.0.0
gateway 10.10.1.1
dns-nameservers 8.8.8.8 8.8.4.4
システムを再起動しましたが、イーサネットはほとんど機能していません。pingはまったく機能しません。 /etc/NetworkManager/NetworkManager.conf
を変更しようとして、次の変更を加えました
#dns=dnsmasq (comment out the dnsmasq)
[ifupdown]
managed=true (changed from false)
これにより、イーサネットを散発的に動作させることができますが、最終的には失敗します。
他の2台のマシンと仮想マシンでもこの構成を試してみましたが、すべて同じ結果になります。これらのマシンにWindowsをインストールすると、これらの設定が正常に機能することを確認できます。同様に、DHCPを自動構成させると、すべてが問題なく機能します。
ここで何かが欠けていると思いますが、静的IPの設定はまったく難しくないはずです。
私は同じ問題を抱えており、これが私の解決策でした:
Sudo nano /etc/network/interfaces
# The primary network interface
の下に(ネットワークに合わせて)貼り付けます:
auto enp0s25
iface enp0s25 inet static
address 192.168.0.16
netmask 255.255.255.0
gateway 192.168.0.1
dns-nameservers 8.8.4.4 8.8.8.8
Ubuntu 16.04ではifconfig -a
または18.04+ではip address
を使用して、正しいインターフェイス名を取得できます
仮想マシンをシャットダウンしてから!!!ネットワーク設定に移動し、[MACアドレスの更新]ボタンを数回クリックします:)
VMを起動すると、インターネットにアクセスできるはずです!
Ubuntu 18.04+の場合、このファイルを編集する必要があります
/etc/netplan/50-cloud-init.yaml
network:
ethernets:
enp0s3:
addresses: [192.168.0.55/24]
gateway4: 192.168.0.1
dhcp4: no
nameservers:
addresses: [1.1.1.1,8.8.8.8]
optional: true
version: 2
ここで受け入れられた回答で上記のように静的IPアドレスを設定しても機能しますが、古いIPアドレス設定をフラッシュしてからnetworking.serviceを再起動する必要があります。
Sudo ip addr flush enp0s25
Sudo systemctl restart networking.service
次に、それが正しいことを確認します。
ip add
Sudo vim /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.1.10
gateway 192.168.1.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8
Sudo ifdown eth0 && Sudo ifup eth0
# interfaces(5) file used by ifup(8) and ifdown(8)
# auto lo
# iface lo inet loopback
auto enp2s0
iface enp2s0 inet static
address 172.16.9.124
netmask 255.255.240.0
gateway 172.16.0.9
dns-nameservers 8.8.8.8
私は同じ問題を抱えていましたが、解決策は単純に「...」でした...少なくとも私にとっては。
auto ens160
iface ens160 inet static
address 172.31.0.164/22
netmask 255.255.252.0
gateway 172.31.0.2
network 172.31.0.0
broadcast 172.31.3.255
dns-nameservers 172.31.0.21 172.31.0.18
#Add internal route
up route add -net 172.16.168.0/21 gw 172.31.0.20 dev ens160
そして、次の場所にあるネットワークインターフェイスの名前で空のファイルを作成します。
~$ touch /etc/network/interfaces.d/ens160
できます...
私は同じ問題を抱えていましたが、これが私の解決策でした。ファイル/etc/network/interface
の最後にある空の行をすべて削除します。
サーバーが古いIPと割り当てられた新しいIPを表示している場合は、サーバーを再起動するだけです。古いIPが自動的にフラッシュされ、新しいIPが保持されます。
サーバーを再起動したくない場合は、次のコマンドを使用します。
Sudo ip addr flush <your-interface-here>
この単純なコマンドを実行して、マシンの起動/再起動時にネットワークインターフェイスが起動するように設定されているかどうかを確認します。
grep "auto" /etc/network/interfaces
標準出力に行が印刷されない場合は、テキストエディタ(vi、nano、sed)で/etc/network/interfaces
を開くと、下の画像のようなものが表示されます。
明らかに、grep
が端末ウィンドウに行を返さなかった場合、/ etc/network/interfacesの形式はまったく似たものにはなりません。 :-)ただし、auto行の形式に従ってください。
auto lo
(Loopback configuration follows)
.
.
.
auto enp0s3
(primary interface configuration follows)
.
.
.
=====================
今、あなたのマシンで。
auto yourInteraceNameHere
(your interface configuration follows)
.
.
.
どのインターフェース名が利用可能か分からないのですか?このコマンドを実行します。
ifconfig -a
次のコマンドは、ネットワークインターフェイスの名前のみを返します。
ifconfig -a | grep encap | awk {'print $1'}
Ubuntuマシンに静的IPを設定していたのですが、ルーターを使用してIPアドレスを割り当てることができることに気付きました。これが最も簡単なソリューションかもしれません。ルーターにログインして、接続されているデバイスを見つけ、そこにIPアドレスを割り当てるだけです。