7.Linux网络配置
7.1.配置IP地址的方法
使用ifconfig命令可以临时配置IP地址,但是如果重启计算机或者重启网络服务,这个IP就会消失,所以一般不用这个方法来配置IP,一般只是用这个命令来查看网卡信息。lo(loopback)表示本地回环网卡,代表计算机本身,IP是127.0.0.1。如果想要临时配置则:ifconfig网卡名IP netmask子网掩码 就可以临时配置一个IP。
使用setup工具(红帽系列专属工具)可以用于永久配置IP地址,工具内的细节选项,写上星号“*”表示已选,不写就没选。配置完成保存退出后,使用命令systemctl restart network就能刷新重启网络服务。
修改网络配置文件也可以用于永久修改IP,这是所有的Linux系统都可以使用的方法。
在图形界面也可以配置IP,不过一般Linux服务器上是不会有图形界面的,和Windows上差不多。
7.2. Linux网络配置文件
修改网络配置文件可以更改计算机IP,网卡信息文件在目录/etc/sysconfig/network-scripts/下,文件名即ifcfg_网卡名,一般为ifcfg-eth0、ifcfg-eth1、ifcfg-enp0s3等形式。该文件中的内容有:
DEVICE=“enp0s3”网卡名;
BOOTPROTO=(none、static、dhcp)是否自动获取IP;HWADDR=”XXXXX”(MAC地址);
NM_CONTROLLED=(yes、no)是否可以由network manager图形管理工具托管
ONBOOT=(yes、no)是否随网络服务启动,网卡是否生效,这里必须写yes;
TYPE=Ethernet网络是以太网;
UUID=”XXX”唯一识别码;
IPADDR=”XXX”IP地址;
NETMASK=”XXX”子网掩码;
GATEWAY=”XXX”网关;
DNS1=”XXX”DNS;
IPV6NIT=no表示ipv6没有启动;
USERCTL=(yes、no)是否同意 不允许非root用户控制此网卡。
如果本地有DHCP服务器同时Linux系统安装有DHCP服务,那么设置BOOTPROTO=dhcp即可自动获取IP,掩码,网关,DNS,不需要手动去输入。
7.3.linux主机名文件
Linux系统默认不遵守Windows系统主机名协议,所以一个主机名在Linux系统中并不重要,一般可以随便修改主机名,主机名文件是/etc/hostname ,修改主机名配置文件需要重启计算机才能生效,hostname+[主机名]只是临时生效的。
7.4.DNS配置文件
DNS配置文件是/etc/resolv.conf,之前修改DNS是临时的,只有在这里修改DNS才可以永久生效,文件中的nameserver后面跟的IP就是DNS服务器的IP.
7.5.VM虚拟机网络参数配置
首先在网卡配置文件中修改好onboot、bootproto、IP等参数,然后重启(systemctl restart network)网络服务,然后修改虚拟机的UUID(如果这个虚拟机是通过复制得到的,就可能需要修改,否则两个虚拟机不能同时联网),修改UUID的方法是在网络配置文件中删除MAC地址行保存退出,接着删除网卡MAC地址绑定文件/etc/udev/rules.d/70-persistent-net.rules,然后重启计算机,完成在计算机内的配置。
在虚拟机的网络适配器中,选择桥接模式,表示虚拟机和主机是通过真实网卡来进行通信,虚拟机只需要和主机配置相同网段的IP地址就可以使用,既能和同一局域网的用户通信,又能访问外网,不过这样就会占用真实的IP地址,可能会造成IP冲突;
选择NAT,表示虚拟机和主机是通过VMnet8这个虚拟网卡来通信,虚拟机可以通过主机来上网,但是不能与局域网内其他人通信;
选择Host-only,表示虚拟机和主机是通过VMnet1这个虚拟网卡来通信,也不能和局域网内其他人通信,也不能上网,就仅仅可以和主机通信。
设置IP主要就是要设置的和主机IP再同一网段。
桥接模式使用VMnet0,虚拟机使用真实网卡,但是一般笔记本都有两个网卡,而且一般都是一个使用另一个没有使用,如果本来在使用无线网卡上网,但是虚拟机桥接的却是网线网卡自然也是不可行的,所以需要在编辑-虚拟网络编辑器中选择当前正在使用的网卡类型。默认桥接对象是自动,但是可能是选不对,所以还是手动选定比较好,网卡名字在计算机的网络连接(更改适配器)可查看到(名字中有wireless的就是无线网卡)
7.6. Linux的网络命令
- 网络环境查看命令
- ifconfig:查看与临时修改网络IP和子网掩码,一般用于查看。
- ifdown+网卡名,用于禁用该网卡(修改onboot参数为no)。
- ifup+网卡名,用于启用该网卡。
- netstat+[选项],用于网络状态查询,-t列出TCP协议端口,-u列出UDP协议端口,-n不显示域名与服务名,只显示IP地址和端口号(执行快),-l仅列出在监听状态网络服务,-a列出所有的网络连接,-rn列出路由器信息(第一行是默认网关),-p列出该服务的进程ID。
- route -n查看路由列表(和netstat -rn结果一样)
- nslookup+主机名或者域名,域名解析命令,能显示本机DNS的IP和域名对应的IP地址。(安装包是bind-utils)
7.7. 网络测试命令
- ping -c [数字]+ip或域名,指定ping包的次数,不加选项就一直ping包。
- telnet+[IP或域名]+端口号,远程管理与端口探测命令,如果想要检测的端口可以用来连接,就会进入一个空白页面,然后按“Ctrl+]”进入telnet交互界面,在按quit就能返回到正常界面,如果检测的端口不能使用,则会提示无法连接。
- traceroute+[选项]+IP或域名,路由跟踪命令,不接选项,显示从本机到目标IP经过的所有网关IP。很好的用于故障追踪排除。(安装包traceroute)
- wget+网络下载地址,即可下载网络上的压缩包等资源,如:
wget http://soft.vpser.net/lnmp/lnmp1.1-full.tar.gz,只要网上可以下载,就可以直接下载该软件。(安装包wget) - tcpdump -I+网卡名 -nnX port+[端口号],nn表示将数据包中的域名与服务转为IP和端口,X以十六进制和ASCLL码显示数据包内容。
7.8.nmcli
ps:有一个系统化的网络配置命令nmcli 这个命令使用起来感觉很高端,实现效率也很高,使用步骤也很简单,但是实际上的功能还是非常强大.
1.对于有无线网卡的Linux系统,比如树莓派3中的Linux,就可以连接WiFi网络,命令nmcli d wifi查看周围无线网络,命令nmcli d connect +WiFi名 password+‘密码’ 连接WiFi,命令nmcli d show wlan0查看WiFi状态。
2.nmcli一般用来代替修改网卡配置文件进行网络设置,命令nmcli connection add然后一直tab就能看到需要设置的参数了,autoconnection 是否开机自启,ip4填指定ip/掩码长度,ytpe填网络类型,只要一直tab跟着提示就能配置完成了。
这个命令还有别的更多的功能,有兴趣的小伙伴可以自行了解,但实际上也可以不去了解,因为用前面的知识也可以完成操作。