如何设置静态IP地址?


30

我已将来宾Ubuntu的网络适配器配置为以桥接模式工作,因此可以从主机SSH到它。

问题是来宾Ubuntu ip地址不断变化。

即使它在192.168.0.4-10的极短范围内变化,每次配置Putty和其他程序仍然需要时间。

有没有一种方法可以使来宾Ubuntu的IP地址保持静态?

我的来宾操作系统具有完整的GUI。

Answers:


33

以图形方式提供静态IP地址

1.转到 network connections

2.然后在有线设置中编辑连接

3.添加系统的IP地址

这是下面的图片

网络连接

网络连接![

如果您好奇,可以从上述步骤中以配置文件的形式找到新创建的连接 /etc/NetworkManager/system-connections


1
你是冠军。有了您的回答,我在几秒钟内就成功配置了Ubuntu和Fedora。虽然我不得不重演Fedora。
2013年


保存按钮未启用。DNS服务器的IP地址应该是什么。
阿伦·拉贾

这对我来说是一个临时解决方案。它在我努力配置两个路由器一起工作时起作用。然后失败了,我不得不切换回自动DHCP。顺便说一句,Ziggo / Cisco EPC3925无线/有线电视网关/路由器是一个发烧的POS。
Diogenes

27

编辑/etc/network/interfaces以反映如下内容:

#此文件描述了系统上可用的网络接口
#以及如何激活它们。有关更多信息,请参见interfaces(5)。

#环回网络接口
自动搜索
iface lo inet回送

#主网络接口
自动eth0
iface eth0 inet静态
地址192.168.0.X
网络掩码255.255.255.0
网络192.168.0.0
广播192.168.0.255
网关192.168.0.X 
域名服务器192.168.0.X

然后执行:

sudo /etc/init.d/networking restart

这会让您得到解决。


如果此答案解决了您的问题,请@@ Mitten将其标记为接受!
Braiam

1
更正:/ etc / network / interfaces。另外,如果静态地址是可路由的(在DNS中,而不是例如192.168.xx),请编辑/ etc / hosts和/ etc / hostname进行匹配。
卡米尔·古德塞内

如何在Ubuntu 17.04下执行此操作?这些说明对此无效。我很高兴使用vi或emacs。
Erik Bennett

10

OP发布:

设定静态IP

sudo nano /etc/network/interfaces #  I use vi instead of nano

当您打开接口文档时,您将看到类似以下内容:

auto lo eth0
iface lo inet loopback
iface eth0 inet dynamic

您想要更改它以合并以下内容:

auto lo eth0
iface lo inet loopback
iface eth0 inet static
        address xxx.xxx.xxx.xxx (enter your ip here)
        netmask xxx.xxx.xxx.xxx (mine was 255.255.255.0)
        gateway xxx.xxx.xxx.xxx (enter gateway ip here,usually the address of the router)

保存更改并退出。

然后我需要向其中添加一些dns信息,resolv.conf因此我打开了文件,如下所示:

sudo nano /etc/resolv.conf # I use vi instead of nano

最初,该文件为空,但不包括“请勿在此处放置任何内容将被覆盖”警告。我仍然添加了以下信息。

格式如下:

nameserver xxx.xxx.xxx.xxx(enter your dns server ip)
nameserver xxx.xxx.xxx.xxx(enter your alt dns server ip)

这是我输入的内容:

nameserver 8.8.8.8 
nameserver 8.8.4.4

保存更改并退出。

此时,您可以重新启动网络:

sudo /etc/init.d/networking restart  

或重启,这就是我所做的:

sudo reboot

重新登录后,我再次尝试安装pure-ftpd,一切正常:

apt-get install pure-ftpd

我希望这对某人有帮助,我四处寻找解决方法,只是偶然地碰到了它。


1
社区维基还是什么?:)
moon.musick 2013年

1

似乎接口eth0之前已配置,并且地址由内核永久保留(出于某种原因)。

要从接口清除所有地址,eth0而不必重新启动网络服务或打开/关闭接口:

sudo ip addr flush dev eth0

然后,您可以使用ifup通过读取/etc/network/interfacesfile 来配置eth0 :

sudo ifup eth0

对于冗长:

sudo ifup -v eth0

1

在Ubuntu 18.04上,LTS Netplan可用,默认情况下将ifupdown替换为Netplan。假设我们的接口是ens192。要检查它是否由NetworkManager管理:

cat /run/NetworkManager/conf.d/netplan.conf

可以输出以下内容:

[keyfile]
# devices managed by networkd
unmanaged-devices+=interface-name:ens192,

备份配置文件(您的路径或文件可能不同):

cp /etc/netplan/01-netcfg.yaml /etc/netplan/01-netcfg.yaml.ori

然后进行编辑/etc/netplan/01-netcfg.yaml,如下所示:

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  ethernets:
    ens192:
      dhcp4: false
      wakeonlan: true
      addresses:
        - 192.168.14.2/24
      gateway4: 192.168.14.1
      nameservers:
        addresses: [8.8.8.8]

使用debug生成输出文件以获取更多详细信息:

sudo netplan --debug generate

我们希望看到:

DEBUG:command generate: running ['/lib/netplan/generate']
** (generate:9991): DEBUG: 18:08:30.447: Processing input file //etc/netplan/01-netcfg.yaml..
** (generate:9991): DEBUG: 18:08:30.447: starting new processing pass
** (generate:9991): DEBUG: 18:08:30.448: ens192: setting default backend to 1
** (generate:9991): DEBUG: 18:08:30.448: Generating output files..
** (generate:9991): DEBUG: 18:08:30.449: NetworkManager: definition ens192 is not for us (backend 1)

我们可以通过以下方式查看实际配置:

cat /run/systemd/network/10-netplan-ens192.network

让我们通过以下方式激活它:

sudo systemctl restart systemd-networkd

如果通过SSH进行连接,请准备好断开连接。做man netplan细节。此站点上还有一个相关的答案


0

唯一对我有用的是:

  • 进入调制解调器配置(http://192.168.0.1
  • 设置DHCP保留租约:它将LAN IP映射到MAC地址
  • 将接口设置为使用DHCP(默认值,可在上在NetworkManager上修改nm-connection-editor

0

====在Ubuntu 14.04上配置静态IP

在文件/ etc / network / interfaces中

iface eth0 inet static
address 10.193.36.29
netmask 255.255.255.0
gateway 10.193.36.1
dns-nameservers 10.124.31.140  10.213.134.41  10.72.255.100

然后:

sudo ifup eth0

需要一些时间才能生效

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.