如何为桌面配置静态IP地址?


24

默认情况下,Ubuntu使用DHCP和Gnome NetworkManger来配置接口。在许多情况下,这并非最佳选择。

如何为适用于所有用户的静态IP地址配置台式机?

其他背景:对于99.9%的用户,静态DHCP条目可能是最简单的解决方案,但是我发现与mythtv-background进程冲突以及对eth0接口的任何更改。如果在运行mythtv之后打开/关闭该接口,则它将挂起进程(这也使系统挂起)。因此,我的问题确实需要一个静态 IP地址,该接口使用已知IP进行连接,并永久保持不变。


2
附带说明一下,您可以在路由器中使用DHCP保留,这将通过NIC的MAC地址识别它来为您的计算机保留IP,这实际上就像设置了静态IP一样。
LFC_fan

1
感谢为只寻找一致IP地址的人提供的好技巧
cmcginty

Answers:


20

右键单击nm,选择“ 编辑连接...”,找到您的界面,单击“ 编辑...”,单击“ IPv4设置”,选择“ 手动”并配置您的界面。

一种替代方法是编辑/ etc / network / interfaces。配置示例为:

auto eth0
iface eth0 inet static
   address 192.168.1.1
    netmask 255.255.255.0
    gateway 192.168.1.1

然后跑

/etc/init.d/networking restart

请记住,这将为此界面禁用nm,并且您将必须删除(或取消注释)条目才能再次激活nm。

编辑(请参阅Casey的文章):编辑/ etc / network / interfaces之后,还必须设置DNS:

在/etc/resolv.conf中设置一个或多个所需的名称服务器:

域名服务器192.168.1.1


“网络重新启动”后,仅出现lo接口
cmcginty 2010年

2
接口名称(eth0在sBlatt的示例中)在您的PC上可能有所不同:eth0是第一个有线以太网接口的常用名称;无线接口的命名没有标准。该命令ip link show将显示网络接口列表及其相关参数。
Riccardo Murri

或者,右键单击网络管理器并选择“编辑连接”,然后选择是有线还是无线,然后单击“添加”。根据需要添加静态IP后,关闭所有对话框,然后在网络管理器图标上单击鼠标左键。现在,您可以选择DHCP的“ Auto Eth0”,以及您手动添加的连接。你可以这样做多次,建立不同的静态IP地址的列表,每个位置或情况你会发现自己英寸
Scaine

@Riccardo,是的,我的界面是eth0。就像我说的那样,对我来说,仅更改接口不是
可行的

@Scain,网络管理器中的更改是否适用于所有用户?我的问题是,切换用户会导致界面关闭和备份。那不是真的静态的。
cmcginty 2010年

5

更新/etc/networking/interfaces以设置静态地址:

auto eth0
iface eth0 inet static
    address 192.168.0.10
    netmask 255.255.255.0
    gateway 192.168.0.1

在中设置一个或多个所需的名称服务器/etc/resolv.conf

nameserver 192.168.0.1

您必须防止gnome-network-manager尝试劫持eth0连接:

sudo apt-get remove network-manager network-manager-gnome

通过重新启动网络子系统来分配静态IP地址:

sudo invoke-rc.d networking restart

5
不要删除网络管理员!如果您在设置静态IP时遇到一些错误(并且无法纠正它们),则可能会导致最终根本没有Internet连接。
Riccardo Murri

1
您可以告诉NetworkManager不要自动启用接口(右键单击-> 编辑连接...- >选择一个-> 编辑...- >单击自动连接复选框);这样,您仍然可以安装网络管理器并通过ifup/ifdown
Riccardo Murri

2
此外,我的评论是在提醒用户同样的问题,即删除网络管理器是一个冒险的方法。您显然可以管理网络连接并排除故障;这个问题的其他读者可能不会...
Riccardo Murri 2010年

/etc/networking/interfaces应该/etc/network/interfaces吗?
CJBS 2014年

1

如果您登录了一个小路由器(例如浏览器中的http://192.168.1.1),请记录当前的DNS服务器地址。从DHCP保留另一个IP地址(例如192.168.1.200-192.168.1.210),或者一起禁用DHCP。

从Ubuntu菜单中:系统->首选项->网络连接->自动eth0->编辑-> IPV4设置->将其更改为手动->添加IP(类似于192.168.1.200您保留的内容上面的命令),网络掩码255.255.255.0和默认路由的路由器内部地址(类似于192.168.1.1用来登录的地址)->输入您在窗口底部记录的DNS服务器地址。


我更新了我的问题,以解释为什么该解决方案对我不起作用。我需要该接口永久保持正常运行。
cmcginty 2010年

当您启动时,它将始终在此地址处出现(在此示例中为192.168.0.200),并永久保持运行状态。您的路由器不再通过DHCP进行设置。它被硬编码到计算机中。

0

1)检查应该配置哪个接口,eth0在这种情况下,假设您要更改的接口是:

$ ip addr

2)打开并编辑/etc/network/interface

$ sudo gedit /etc/network/interface

3)在文件中添加以下行/etc/network/interface

auto eth0
iface eth0 inet static
address 192.168.1.22
netmask 255.255.255.0
gateway 192.168.1.1

3)重新启动与命令你的界面ifdownifup

$ sudo ifdown --force eth0
$ sudo ifup --force eth0

PS:使用$ sudo systemctl restart networking$ sudo ifup eth0 在使用其他网络工具时可能无法正常工作,请同时检查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.