博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux 学习笔记一 ---- 常规网络配置
阅读量:6228 次
发布时间:2019-06-21

本文共 4805 字,大约阅读时间需要 16 分钟。

1、配置主机名

修改/etc/hosts文件中主机名
通过编辑/etc/sysconfig/network文件中的HOSTNAME字段修改主机名
注意:如果hosts里没有设置本地解析,就可以不管,修改主机名后需要重启系统生效哈。
我们设置完主机名生效后,可以使用hostname查看当前主机名称。
image
可以使用两个简单的命令临时设置主机名。
a.最常用的是使用hostname来设置哈。
格式:hostname 主机名
image
b.使用sysctl命令修改内核参数。
格式:sysctl kernel.hostname=主机名
image
这样两个设置是临时的哈,重启系统后设置失效哈。

2、 使用ifconfig配置IP地址及辅助IP地址

格式:ifconfig 网卡名 ip地址 netmask 子网掩码
使用ifconfig命令可以查看网卡配置信息,如IP地址、MAC地址,收发数据包情况等。
ifconfig字段解析:
标志位 注释
eth0 表示第一块以太网卡
Link encap 表示该网卡位于OSI物理层(Physical Layer)的名称
HWaddr 表示网卡的MAC地址(Hardware Address)
inet addr 表示该网卡在TCP/IP网络中的IP地址
Bcast 表示广播地址(Broad Address)
Mask 表示子网掩码(Subnet Mask)
MTU 表示最大传送单元,不同局域网类型的MTU值不一定相同,对以太网来说,MTU的默认设置是1500个字节
Metric 表示度量值,通常用于计算路由成本
RX 表示接收的数据包
TX 表示发送的数据包
collisions 表示数据包冲突的次数
txqueuelen 表示传送列队(Transfer Queue)长度
interrupt 表示该网卡的IRQ中断号
Base address 表示I/O地址

如果我们要单独查看某块网卡的状况,可以在ifconfig命令后加上指定的网卡名,比如:ifconfig eth0

配置虚拟网卡IP地址

在实际工作中,可以会出现一块网卡需要拥有多个IP地址的情况,可以通过设置虚拟网卡来实现。
命令格式:
ifconfig 网卡名:虚拟网卡ID IP地址 netmask 子网掩码

3、禁用和启用网卡

对于网卡的禁用和启用,依然可以使用ifconfig命令哈。
命令格式:
ifconfig 网卡名称 down #禁用网卡
ifconfig 网卡名称 up #启用网卡

使用ifdown eth0和ifup命令也可以实现禁用和启用网卡的效果。

命令格式:
ifdown 网卡名称 #禁用网卡
ifup 网卡名称 #启用网卡

4、 更改网卡MAC地址

命令格式:
ifconfig 网卡名 hw ether MAC地址
如果我们不先禁用网卡会发现提示错误,修改不生效哈。
image
注意:ifconfig命令修改IP地址和MAC地址都是临时生效的哈,重新启动系统后,设置失效。我们可以通过修改网卡配置文件使其永久生效哈。具体可以看下2.6的网卡配置文件,我们会讲哈。

5、 route命令设置网关

route命令可以说是ifconfig命令的黄金搭档,也像ifconfig命令一样几乎所有的Linux发行版都可以使用该命令。route通常用来进行路由设置。比如添加或者删除路由条目以及查看路由信息,当然也可以设置默认网关哈。
route命令格式:
route add default gw ip地址 #添加默认网关
route del default gw ip地址 #删除默认网关
我们把Linux主机的默认网关设置为192.168.0.55哈,设置好后可以使用route命令查看网关及路由情况。
image
Flags用来描述该条路由条目的相关信息,如是否活跃,是否为网关等哈,U表示该条路由条目为活跃滴,G表示该条路由条目要涉及到网关哈。
route命令设置网关也是临时生效的哈,重启系统后失效。我们发现重启系统后,刚刚设置的路由条目没有了哈。

6、 网卡配置文件

网卡配置文件位于/etc/sysconfig/network-scripts/目录下
每块网卡都有一个单独的配置文件,可以通过文件名来找到每块网卡对应的配置文件。例如:ifcfg-eth0就是eth0这块网卡的配置文件。我们来编辑/etc/sysconfig/network-scripts/ifcfg-eth0文件来进行配置看看效果哈。
vim ifcfg-eth0
常见的参数如下哈:
参数 注解 默认值 是否可省略
DEVICE 指定网卡名称 无 不能
BOOTPROTO 指定启动方式
static:表示使用静态IP地址
boot/dhcp:表示通过BOOTP或DHCP协议自动获得IP地址 static 可以
HWADDR 指定网卡的MAC地址 无 可以
BROADCAST 指定广播地址 通过IP地址和子网掩码自动计算得到 可以
IPADDR 指定IP地址 无 可以
当BOOTPROTO=static时不能省略
NETMASK 指定子网掩码 无 可以
当BOOTPROTO=static时不能省略
NETWORK 指定网络地址 通过IP地址和子网掩码自动计算得到 可以
ONBOOT 指定在启动network服务时,是否启用该网卡 yes 可以
GATEWAY 指定网关 无 可以
修改过网卡配置文件后,需要重新启动network服务或重新启用设置过的网卡,使用配置生效哈。

7、 修改resolv.conf设置DNS

Linux中设置DNS客户端时可以直接编辑/etc/resolv.conf,然后使用namserver参数来指定DNS服务器的IP地址。
image

8、网络环境测试 -- ping命令检测网络状况

ping命令格式:
ping 可选项 IP地址或主机名
ping命令支持大量可选项,功能那是相当的强大哈。
选项 说明
-c <完成次数> 设置完成要求回应的次数
-s <数据包大小> 设置数据包的大小
-i <间隔秒数> 指定收发信息的间隔时间
-f 极限检测
-I <网络界面> 使用指定的网络界面送出数据包
-n 只输出数值
-p <范本样式> 设置填满数据包的范本样式
-R 记录路由过程
-q 不显示指令执行过程,开头和结尾的相关信息除外
-r 忽略普通的路由表,直接将数据包送到远端主机上
-t <存活数值> 设置存活数值TTL的大小
-v 详细显示指令的执行过程
-l <前置载入> 设置在送出要求信息之前,先行发出的数据包
使用ping命令简单测试下网络的连通性
image

每条返回信息会表示响应的数据包的情况。

icmp_seq:数据包的序号,从1开始递增。
ttl:Time To Live,生存周期。
time:数据包的响应时间,即发送请求数据包到接收响应数据包的整个时间,该时间越短说明网络的延时越小,速度越快。
在ping命令终止后,会在下方出现统计信息,显示发送及接收的数据包,丢包率及响应时间,其中丢包率越低,说明网络状况良好、稳定哈。

9、ping命令检测网络状况 -- netstat命令

netstat(network statistics)主要用于检测主机的网络配置和状况,可以查看显示网络连接(进站和出站)、系统路由表、网络接口状态。netstat支持Unix、Linux及Windows系统,功能也是非常滴强大哈。
netstat命令格式:
netstat [可选项]
netstat常用的可选项:
选项 说明
-r或--route 显示路由表
-a或--all 显示所有连接信息
-t或--tcp 显示TCP传输协议的连接状况
-u或--udp 显示UDP传输协议的连接状况
-c或--continuous 持续列出网络状态,监控连接情况
-i或--interfaces 显示网络界面信息表单
-l或--listening 显示监控中的服务器的Socket
-n或--numeric 使用数字方式显示地址和端口号
-p或--programs 显示正在使用Socket的程序识别码和程序名称
-s或--statistice 显示网络工作信息统计表

(1)查看端口信息

网络上的主机通信时必须具有唯一的IP地址,以标示自己的身份,计算机通信时使用TCP/IP协议栈的端口,主机使用“IP地址:端口”与其他 主机建立连接并进行通信。计算机通信时使用的端口从0~65535,共有65536个,数量非常滴多哈,对于一台计算机,可能同时使用很多协议,为了标示 它们,相关组织为每个协议分配了端口号,比如HTTP协议的端口号为80,SMTP协议的端口号为25,TELNET协议的端口号为23等等哈。网络协议 就是网络中传递、管理信息的一些规范,计算机之间的相互通信需要共同遵守一定的规则,这些规则就称为网络协议。
使用netstat命令以数字方式查看所有TCP协议连接情况:netstat -atn
image
选项中-a表示显示所有连接
Proto:协议类型,因为使用-t选项,这里就只显示TCP协议了哈,要显示UDP协议可以使用-u选项,不设置则显示所有协议哈。
Local Address:本地地址,默认显示主机名和服务名称,使用选项-n后显示主机的IP地址及端口号。
Foreign Address:远程地址,与本机连接的主机,默认显示主机名和服务名称,使用选项-n后显示主机的IP地址及端口号。 State:连接状态,常见的有以下几种哈:
LISTEN 表示监听状态,等待接收入站的请求。
ESTABLISHED 表示本机已经与其他主机建立好连接。
TIME_WAIT 等待足够的时间以确保远程TCP接收到连接中断请求的确认。

(2)查看路由表

netstat使用-r参数,可以显示当前主机的路由表信息。
image
(3)查看网络接口状态
灵活运用netstat命令,还可以监控主机网络接口的统计信息,显示数据包发送和接收情况。
image
MTU字段:表示最大传输单元,即网络接口传输数据包的最大值。
Met字段:表示度量值,越小优先级越高。
RX-OK/TX-OK:分别表示接收、发送的数据包数量。
RX-ERR/TX-ERR:表示接收、发送的错误数据包数量。
RX-DRP/TX-DRP:表示丢弃的数量。
RX-OVR/TX-OVR:表示丢失数据包数量。
通过这些数据可以查看主机各接口连接网络的情况。

10、ping命令检测网络状况 -- nslookup测试域名解析

nslookup工具可以查询互联网域名信息,检测DNS服务器的设置。如查询域名所对应的IP地址等。nslookup支持两种模式:非交互式和交互式模式。
(1)非交互式模式
非交互式模式仅仅可以查询主机和域名信息。在命令行下直接输入nslookup命令,查询域名信息。
命令格式:
nslookup 域名或IP地址
我们还是查下我们51cto网站对应的DNS信息哈:nslookup [url]www.51cto.com[/url]
image
[url]www.51cto.com[/url]对应的IP地址为:211.103.156.229。

(2)交互模式

交互模式允许用户通过域名服务器查询主机和域名信息或者显示一个域的主机列表。用户可以按照需要,输入指令进行交互式的操作。
交互模式下,nslookup可以自由查询主机或者域名信息。

转载于:https://blog.51cto.com/10085711/2059022

你可能感兴趣的文章
PHP 单元测试
查看>>
魔幻特效,慢放世界,nova 3带你玩转抖音新技能
查看>>
声明式调用---Feign
查看>>
有效的沟通,如忍者的最后一击!
查看>>
从零开始搭建一个简单的基于webpack的vue开发环境
查看>>
【功能盘点】升级后的媒体处理MPS有哪些能力?
查看>>
聊聊redis的slowlog与latency monitor
查看>>
【iOS 印象】Swift 中值类型与引用类型指北
查看>>
vim-galore 中文翻译
查看>>
云数据库Memcache版使用教程
查看>>
重构了一下小博客
查看>>
redux简单实现与分析
查看>>
iOS12的捷径你玩过了吗
查看>>
iOS实现UITableViewCell点击展开文本内容
查看>>
基本特效:饿了么丝滑无缝过度搜索栏的实现
查看>>
理解JavaScript中的this
查看>>
fetch timeout + 缓存了解下?
查看>>
Netty网络聊天(一) 聊天室的实战(最易懂)
查看>>
JavaScript数据结构与算法(排序算法)
查看>>
没朋友(mpvue),点个外卖,一个人也要好好吃饭
查看>>