查看网络配置
1.使用ifconfig命令查看网络接口地址
主机的网络接口卡(网卡)通常称为"网络接口"在Linux系统中ifconfig命令可以查看网络接口的地址配置信息(interface Configuration)
1)查看活动的网络接口设备
当ifconfig命令不带任何选项和参数时,将显示当前主机中已经启用的网络接口信息。例如,直接执行ifconfig命令后可以看到ens32 lo这两个网络接口信息
以上述输出结果中,ens32对应为第一块物理网卡,lo对应为虚拟的回环接口
###lo:“回环网络接口,“lo”是''loopback''的缩写,它并不代表真正的网络接口,而是一个虚拟的网络接口,其IP地址默认是“127.0.0.1”.回环地址通常仅用于对本机的网络测试。
###ens32:
2)查看指定的网络接口信息
当只需要查看其中某一个网络接口的信息时,可以使用网络接口的名称作为ifconfig命令的参数(不论该网络接口是否处于激活状态)。例如“ifconfig ens32” 命令后可以只查看网卡ens32的配置信息。
从上述命令显示的结果中,可以获知ens32网卡的一些基本信息,如下所述。
1 #“inet”表示网络接口的IP地址,如“192.168.0.104”
2
3 #"broadcast"表示网络接口所在网络的广播地址,如“192.168.0.255”
4
5 #“netmask” 表示网络接口的子网掩码,如“255.255.255.0”
6
7 除此以外,还能够通过“TX”,“RX” 等信息了解到通过该网络接口发送和接收的数据包个数,流量等更多属性。
2.使用hostname命令查看主机名称
在Linux系统中,相当一部分网络服务都会通过主机名来识别本机,如果主机名配置不当,可能导致程序功能出现故障,使用hostname命令可以查看当前的主机名主机名,不用添加任何选项或参数。
3.使用route命令查看路由表条目
Linux系统当中的路由表决定着从本机向其他主机,其他网络发送数据的方向,是排除网络故障的关键信息,直接执行route命令可以查看当前主机中的路由表信息,在输出结果中,Destination 列对应目标网段的地址,Gateway列对应下一跳路由器的地址,iface列对应发送数据的网络接口。
4.通过netstat命令命令查看网络连接情况
通过netstat命令可以查看当前系统的网络连接状态,路由表,接口统计等信息,是了解网络状态及排除网络服务故障的有效工具。以下是netstat命令常用的几个选项。
# -a :显示当前主机中所有活动的网络连接信息(包括监听,非监听状态的服务端口)
# -n :以数字的形式显示相关的主机地址,端口等信息。
# -r :显示路由表信息
# -l :显示处于监听(listening)状态的网络连接及端口信息。
# -t :查看TCP协议相关的信息。
# -u :显示UDP协议相关的信息。
# -p :显示与网络连接相关联的进程号,进程名称信息(该选项需要root权限)。
通常使用“-anpt‘组合选项,以数字的形式显示当前系统中所有的TCP连接信息,同时显示对应的进程信息,结合命令管道使用'grep'命令,还可以在结果中过滤出所需要的特定记录,例如,执行以下操作可以查看本机中是否有监听”TCP 80 “ 端口(即标准FTP服务)的服务程序,输出信息中包括PID号和进程名称。
测试网络连接
1.使用ping命令测试网络连通性
使用ping命令可以向目的主机持续地发送测试数据包,并显示反馈结果,直到 Ctrl+C 组合键后终止测试,并显示最终统计结果。例如,以下操作将测试从本机到另一台主机 192.168.245.133 的连通性情况,连接正常时会收到返回的数据包。
执行ping测试命令时,若不能获得从目标主机发回的反馈数据包,则表示在本机到目标主机之间存在网络连通性故障。例如,若看不到“Destination Host UNreachable” 的反馈信息,则表示目的主机不可达,可能目标地址不存在或者主机已经关闭;“Network is UNreachable” 的反馈信息,则表示没有可用的路由记录(如默认网关),无法达到目标主机所在网络。
当网络中存在影响通信过程稳定性的因素(如网卡故障,病毒或者网络攻击)时,使用ping命令测试可能会频繁看大 “Request timeout” 的反馈结果,表示与目标主机间的连接超时(数据包相应缓慢或丢失)。除此以外,当目标主机有严格的防火墙限制时,也可能收到发回“Request timeout” 的反馈结果。
2.使用traceroute命令跟踪数据包的路由途径
使用traceroute命令可以测试从当前主机到目的主机之间经过了哪些网络结点,并显示各中间结点的连接状态(响应时间)。对于无法响应的结点,连接状态将显示为 “*” 。例如,通过以下操作结果可以看出,从本机到目标主机192.168.4.4之间,中间需要跨越一个路由器192.
[root@bogon ~]# traceroute 192.168.7.7
traceroute to 192.168.7.7(192.168.7.7),30 hops max,40 byte packets
1(192.168.4.1)7.740ms15.581ms15.881ms
2(192.168.7.7)19.652ms19.995ms19.942ms
traceroute命令能够比ping命令更加准确地定位网络连接的故障点(中断点),执行速度也因此会比ping命令稍慢,在网络测试与排错过程中,通常会先使用ping命令测试与目的主机网络连接,如果发现网络连接有故障,再使用traceroute命令跟踪查看是在哪个中间结点存在故障的。
3.使用 nslookup 命令测试DNS域名解析
当域名解析出现异常时,将无法使用域名的形式访问网络中的Web站点,电子邮件系统等服务。nslookup命令时用来测试域名解析的专用工具,使用时只要制定要解析的目标域名作为参数即可。例如,执行 “nslookup www.baidu.com” 命名后,nslookup程序将提交查询请求,询问站点www.baidu.com对应的IP地址是多少。
###nslookup为插件,可以
yum -y install bind-utils
安装即可
若能成功反馈要查询域名的IP地址,则表示域名解析没有问题,否则需要根据实际反馈情况来判断故障原因,例如,出现“...no severs could be reached ” 的信息,表示不能连接到指定的DNS服务器;若出现“.....can't find xxx.yyy.zzz; NXDOMAIN” 的信息,表示要查询的域名不存在。
设置网络地址参数
###临时配置:通过命令行直接修改当前正在使用的网络地址,修改后立即可以生效,这种方式操作简单,快速,执行效率高,一般在调试网络的过程中使用。但由于所做的修改并没有固定的存放在静态的文件中,因此当重启network服务或重启主机后将会失效。
###固定配置:通过配置文件俩存放固定的各种网络地址,需要重启network服务或者重启主机后才会生效,这种方式操作上相对要复杂,但相当于“永久配置”,一般在需要为服务器设置固定的网络地址时使用。
1.使用ifconfig命令修改网卡的地址状态
ifconfig命令不仅可以用于查看网卡配置,还可以修改网卡的IP地址,子网掩码,也可以绑定虚拟网络接口,激活或者停用网络接口。
1)修改网卡的IP地址,子网掩码
ifconfig 网络接口名称 IP地址 [netmask 子网掩码]
ifconfig 网络接口名称 IP地址 [/子网掩码长度]
例如:ifconfig eth0 192.168.100.1 netmast 255.255.255.0
例如:ifconfig eth0 192.168.100.243/24
2)禁用,激活网络接口
2.使用hostname修改主机名称
hostname 命令不仅可以用于显示当前主机名称还可以修改当前主机的名称。
3.修改网络配置文件
### DEVICE :设置网络接口的名称
### ONBOOT :设置网络接口是否在Linux系统启动时激活
### BOOTPROTO :设置网络接口的配置方式,值为"static" 时表示使用静态指定的IP地址,为“dhcp”时表示通过DHCP的方式动态获取地址
### IPADDR :设置网络接口的IP地址
### NETMASK :设置网络接口的子网掩码
### GATEWAY :设置网络接口的默认网关
修改了网络配置文件后,若要使新的配置生效,重启network服务。
只想禁用或启用某一个网络接口,可分别使用两个接口控制脚本 ifdown ens33 // ifup ens33
4.修改Linux系统主机名
#修改Linux系统的主机名,可以修改配置文件 ↓ (如下)
[root@Shrek ~]# vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=www.niubi.com
#"HOSTNAME"用于设置主机名
#"NETWORKING"用于设置IPv4网络的默认启用状态
5.域名解析配置文件
1)指定为本机提供DNS解析的服务器地址
/etc/resolv.conf文件中记录了本机默认使用的DNS服务器的地址信息,对该文件所做的修改将会立刻生效,Linux系统中最多可以指定3个(第三个以后的将被忽略)不同的DNS服务器地址,优先使用第一个DNS服务器,例如,执行以下操作可以指定默认的两个DNS服务器地址分位于192.168.245.2和192.168.0.1。
/etc/resolv.conf文件中的“search localdomain” 行用来设置默认的搜索域(域名后缀)。例如。当访问主机“localhost”时,就相当于访问“search localdomain”
2)本地主机映射文件:
/etc/host/文件中记载着一份主机与IP地址的映射关系表,一般用来保存经常需要访问的主机信息,当访问一个位置的域名时,先查找该文件是否有相应的映射记录,如果找不到再去向DNS查询。
例如,若在etc下hosts文件中添加“119.75.218.70 www.baidu.com” 的映射记录,则当访问网站,www.baidu.com时,将会直接向IP地址119.75.218.70发送Web请求,省略了向DNS服务器解析IP地址的过程。
对于经常访问的一些网站,可以通过在/etc/hosts文件中添加正确的映射记录,减少DNS查询过程,从而提高上网速度。host文件只保存在本地,所以其中的映射记录也只使用于当前主机,而无法作用于整个网络。
6.DHCP动态配置主机地址
在网络中架设一台专用的DHCP服务器,负责集中分配各种网络地址参数,(主要包括IP地址,子网掩码,广播地址,默认网关地址,DNS服务器地址);其他主机作为DHCP客户机,将网卡配置为自动获取地址,即可与DHCP服务器进行通信,完成自动配置过程。
[root@bogon ~]# cat /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example
[root@bogon ~]#
主配置文件可以使用 声明 , 参数 , 选项 这三种类型的配置,
# 声明:用来描述dhcp服务器对网络布局的划分,是网络设置的逻辑范围,较常见的声明是subnet。host。subnet是声明用来约束一个网络。host声明用来约束一台特定的主机。
# 参数:由配置关键字和对应的值组成,总是以分号“ ;”结束,一般位于指定的声明范围内,用来设置所在范围的运行特性,(如默认租约时间,最大租约时间等等)。
# 选项:由“option”引导,后面根据具体的配置关键字和对应的值,也是以分号“ ;”结束,用于指定分配给客户机的各种地址参数(如默认的网关地址,子网掩码,DNS服务器地址等等)。
全局配置常用参数和选项:
# ddns-update-style:动态DNS更新模式
# default-lease-time:默认租约时间
# max-lease-time:最大租约时间
# option domain-name:默认搜素区域
# option domain-name-servers:DNS服务器地址