Linux静态IP配置

问题

工作当中需要配置静态IP,我原来以为很简单,随便google了一下,于是照猫画虎配置了一通,结果发现不起作用。原因主要有两个:

  1. 系统差异。我使用的是debian系的mint,网上大多都是centos的配置。
  2. 方案过时,大部分资料都是5年前了。

教程

  1. 静态IP配置:/etc/network/interfaces
auto lo
iface lo inet loopback

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

通过ifconfig命令可以查看netmask,nm-tool命令可以查看gateway。

  1. DNS配置:/etc/resolvconf/resolv.conf.d/base
nameserver 202.101.172.46

多说几句,网上千篇一律的都是配置/etc/resolv.conf,显然这是过时的,查看这个文件,发现有一句话:

DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
  1. 修改ifupdown

按理来说这一步是重启网络,但是你重启后肯定无法上网,需要配置/etc/NetworkManager/NetworkManager.conf

[main]
plugins=ifupdown,keyfile,ofono
dns=dnsmasq

no-auto-default=40:8D:5C:01:8E:CC,

[ifupdown]
managed=true

将managed修改为true

  1. 重启网络:
    ** sudo service network-manager restart **

网上都是service networking restart或者service /etc/init.d/networking restart。
执行ifconfig命令看看是否生效,不行就再重启一次。

  1. 单网卡绑定多个IP

网上的方案同样不靠谱,可惜我自己也没找到办法,只能通过命令行临时解决:
** sudo ifconfig eth0:0 192.168.0.121 broadcast 192.168.0.255 netmask 255.255.255.0 **

[mountain@king /etc/network]$ ifconfig
eth0      Link encap:Ethernet  HWaddr 40:8d:5c:01:8e:cc  
          inet addr:192.168.0.120  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::428d:5cff:fe01:8ecc/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:3492705 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4742489 errors:0 dropped:16 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:3154609653 (3.1 GB)  TX bytes:1715063760 (1.7 GB)

eth0:0    Link encap:Ethernet  HWaddr 40:8d:5c:01:8e:cc  
          inet addr:192.168.0.121  Bcast:192.168.0.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

总结

看似一个很简单的问题,花了我一天的时间来解决,而且我自吹对linux的了解碾压绝大部分java程序员。哎,运维绝壁是互联网行业最被低估的岗位,水太深。

    原文作者:MountainKing
    原文地址: https://www.jianshu.com/p/44dc530d1ef0
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞