实战环境:
1)Ubuntu16.04.5;
2)远程主机;
另:有需要托管物理主机的,可联系。
重要说明:
本文档是配置成功后,通过终端history命令查询历史命令所补写。所以思路和命令语法肯定没问题,但是部分执行命令后返回信息可能有误,请谅解并第一时间通知我修改。
在有机会的时候,我将再次重装机器并校验本文档的正确性(当前还未校验;校验会说明)。
思路:
步骤1)查询本机所有的物理网卡名称
步骤2)启动物理网卡
步骤3)配置IP地址,通过vim编辑文件
步骤4)配置DNS
步骤5)配置网关
--------------------
步骤1)查询本机所有的物理网卡名称
说明:新装机,可能物理网卡没有启用,且物理网卡的名称未知,还是查询一下更稳妥。
ifconfig -a #### 查看本机所有物理网卡的名称
返回信息如下:
enp1x0 Link…………………………
inet addr:xxx.xxx.xxx.xxx Bcast:xxx.xxx.xxx.xxx Mask:xxx.xxx.xxx.xxx
inet6 addr:………………
………………………………
enp2x0 Link…………………………
inet addr:xxx.xxx.xxx.xxx Bcast:xxx.xxx.xxx.xxx Mask:xxx.xxx.xxx.xxx
inet6 addr:………………
………………………………
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
………………………………
其中:enp1x0和enp2x0分别为物理网卡的名称;且缺少地址信息。
--------------------
步骤2)启动物理网卡
说明:指定的物理网卡的启动为up;指定的物理网卡的关闭为down
提醒:多网卡的服务器,请确认网线是插入的启用(up)的网卡。
sudo ifconfig enp1x0 up # 启动网卡enp1x0
--------------------
步骤3)配置IP地址
说明:就启用的网卡,配置其静态IP地址。注意三个参数:static/dhcp/loopback
sudo vim /etc/network/interfaces
返回信息如下:
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
# New Network Interface; You can add by yourself.
auto enp1x0
iface enp1x0 inet static
address xx.xx.xx.xx
netmask xx.xx.xx.xx
gateway xx.xx.xx.xx
broadcast xx.xx.xx.xx
#### dns-nameserver 114.114.114.114 #有说这样也可添加DNS,但未实测。还是用下面的实测方法一较好。
#### dns-nameserver 61.177.7.1 #有说这样也可以添加DNS,但未实测。还是用下面的实测方法一较好。
#### dns-nameservers 114.114.114.114 61.177.7.1 #或上面2行变一行,未实测。
说明:上面的xx.xx.xx.xx为IP地址(如: 111.13.100.92); auto enp1x0表示开机时网卡自动启动; static表示enp1x0网卡为静态IP地址。address为本机的IP地址; netmask为子网掩码; gateway为网关; broadcast为广播地址(可用#注释掉本行广播地址); dns-nameserver后跟空格和DNS的地址(根据实情填写),因为实战中用步骤四的永久方式添加DNS成功,故未测试本方法。
sudo /etc/init.d/networking restart
sudo ifconfig
vim编辑保存后,需重启网卡服务;再通过ifconfig查看下。若一切正常,也可以ping下内网地址,看看是否有响应信息返回。
--------------------
步骤4)配置DNS。有两种方法,一种为永久生效;一种为临时生效(可用于测试)。
方法一(永久):更新DNS信息
sudo cat /etc/resolv.conf # 未更新resolv.conf时,先查看DNS内容
sudo vim /etc/resolvconf/resolv.conf.d/base
nameserver 114.114.114.114
nameserver 61.177.7.1
说明:resolv.conf.d/base默认是空白文件,nameserver内容需要自己按格式添加,ip地址根据您的实际情况填写。
sudo resolvconf -u
sudo cat /etc/resolv.conf # 检查文件内容是否被保存
注意:被vim的文件 和 cat显示的文件 不是同一个文件。
sudo /etc/init.d/resolvconf restart # 可以重启DNS服务
sudo cat /etc/resolv.conf # 查看重启DNS服务后,永久方式的DNS服务器地址是否还在。
方法二(非永久/临时):更新DNS信息
sudo vim /etc/resolv.conf
返回信息如下:
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 114.114.114.114
nameserver 61.177.7.1
说明:nameserver的信息是需要自己添加的。
本方法适合测试,因更新resolv.conf服务或重启机器后,DNS信息将被复原/丢失/清除(YOUR CHANGES WILL BE OVERWRITTEN)
该方法实战的意义可能为:远程服务器,设置某时间重启后,采用非永久方式配置路由用于测试。就算配置造成当下网络无法连接,但是到设定时间重启后,可恢复上次的路由状态(或是通知服务器管理方帮重启下服务器)。
--------------------
步骤5)配置网关
route -n # 先查看下
sudo route add default gw xx.xx.xx.xx
sudo route add -net xx.xx.xx.xx netmask xx.xx.xx.xx gw xx.xx.xx.xx enp1x0
route -n # 再检查下添加后的信息
返回信息如下:
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 xx.xx.xx.xx 0.0.0.0 UG 0 0 0 enp1x0
xx.xx.xx.xx 0.0.0.0 xx.xx.xx.xx U 0 0 0 enp1x0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 enp1x0
reboot
说明:enp1x0为网卡名。169.254.0.0不要去修改,它可能是在重启后系统添加的(实战后写的本文档,记不清了)。
至此,配置完毕。
补充:若网关信息维护错误,则删除的命令如下:
sudo route del -net xx.xx.xx.xx netmask xx.xx.xx.xx
sudo route add -net xx.xx.xx.xx netmask xx.xx.xx.xx gw xx.xx.xx.xx