无法在Ubuntu上设置静态IP

我最近安装了Ubuntu Desktop 13.10,我试图通过更改/etc/network/interfaces文件来设置静态IP:

 # interfaces(5) file used by ifup(8) and ifdown(8) auto lo iface lo inet loopback iface eth0 inet dynamic 

至:

 # interfaces(5) file used by ifup(8) and ifdown(8) auto lo iface lo inet loopback iface eth0 inet static address 192.168.1.70 netmask 255.255.255.0 broadcast 192.168.1.255 network 192.168.1.0 gateway 192.168.1.1 dns-nameservers 8.8.8.8 

使用我从这些FAQ / Tutorial Sites收集的任何内容

  • Ubuntu网络配置
  • 在ubuntu 12.04 lts服务器中使用静态IP的问题
  • Linux基础知识 – 在Ubuntu上设置静态IP
  • Howto:Ubuntu Linux将DHCP网络配置转换为静态IP配置

我仔细检查了这些数字,它们与我在办公室的2台不同计算机上使用的值相同(注意:那两台计算机,raspis,连接到网络交换机然后连接到路由器,而当前有问题的桌面直接连接到路由器)。 但是,当我启用静态地址并重新启动时,机器不会获取我请求的IP地址( 192.168.1.70 ),而是获取另一个( 192.168.1.111完全禁用NIC。 我还尝试过请求一个不同的IP地址( 192.168.1.199 ),以防旧的地址被占用,但这也导致NIC被禁用。

我在这里问这个问题,因为google / SO似乎没有特别关于用户应该做什么的答案,以及如何简单地“搜索问题”并快速更新单个文件不会导致静态地址。 我具体要求以下内容:

  1. 答案为什么这可能不起作用(即这是否与Ubuntu 13.10相关)。
  2. 如何在引导期间调试网络初始化。
  3. 如何最终设置静态IP地址。

编辑:

根据Atari的要求,我尝试使用GUI而不是命令行设置IP。 为此,我必须首先清除/etc/network/interfaces文件(通过注释静态相关行),重新启动,然后再次尝试。 如果我不这样做,我甚至无法访问我的NIC的选项。 这确实为我的计算机分配了静态IP,但是,现在我只能通过本地访问(通过ssh ),完全无法访问互联网。

您缺少将导致配置在启动时运行的行。

编辑/etc/network/interfaces配置并添加以下行:

 auto eth0 

同时,您可以使用以下命令设置静态地址:

 sudo ifup eth0 

您希望只有在连接到特定网络时才能启动界面,请查看ifupdown软件包的文档和示例。 特别是,查看mapping命令。 ping-places.sh命令可用于识别您所在的网络。

我会尝试使用GUI来设置静态IP。 如果可行,那么您就知道您正在使用NetworkManager程序包来控制该NIC的IP。 如果在手动配置中提到它,则包应该为接口禁用自身(根据: https : //wiki.debian.org/NetworkManager )但是这似乎没有发生。

您也可以使用…完全删除NetworkManager

sudo apt-get install network-manager-gnome

sudo apt-get remove network-manager

…然后尝试手动更改它。

我似乎有点迟了,但仍然如此:因为我认为12.04如果你想投入很少的工作并通过旧的/ etc / network /接口完成工作,你就会被搞砸了。

但是有希望! :d

只需使用/ etc / NetworkManager / system-connections / CONNECTIONS即可

如果你采用通过以太网连接的标准系统,文件通常如下所示:

filename:有线连接1

内容:

 [802-3-ethernet] duplex=full mac-address=xx:xx:xx:xx:xx:xx 

[连接]

 id=Wired connection 1 uuid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx type=802-3-ethernet timespamp = xxxxxxxxxx 

[IPv6的]

 method=auto 

[IPv4的]

 method=manual dns=192.168.0.1 address=192.168.0.123/24,192.168.0.1 

我发现这很容易在您的路由器上完成。 我不知道您可能拥有哪种类型的路由器,但应该有一个选项,您可以将MAC地址映射到LAN上的特定IP地址。 这是我的设置……

你快到了。 ssh工作,固定的IP是可以的。 现在唯一缺少的当然是dns。 这就是你无法上网的原因。 您的网关是192.168.1.1,这可能是路由器。 其中许多提供dns,所以只需尝试192.168.1.1作为名称服务器

需要auto eth0auto eth0 ,一旦你有代码完全重新启动,将发生更改。

ifconfig eth0 up / down不进行更改。

当你使用ifdownifup使用-v选项打印任何错误后,你应该按Ctrl + Alt + T (打开一个终端)杀死dhcp deamond并输入: sudo killall dhcp并输入你的密码。