一、以太网(Ethernet)
以太网(Ethernet)是一种计算机局域网技术。IEEE 组织的 IEEE 802.3 标准制定了以太网的技术标准,它规定了包括物理层的连线、电子信号和介质访问层协议的内容。以太网是目前应用最普遍的局域网技术,取代了其他局域网标准如令牌环、FDDI 和 ARCNET。
以太网实现了网络上无线电系统多个节点发送信息的想法,每个节点必须通过电缆或者信道才能传送信息,有时也叫作以太(Ether)。(这个名字来源于 19 世纪的物理学家假设的电磁辐射媒体-光以太。后来的研究证明光以太不存在。) 每一个节点有全球唯一的 48 位地址也就是制造商分配给网卡的 MAC 地址,以保证以太网上所有节点能互相鉴别。由于以太网十分普遍,许多制造商把以太网卡直接集成进计算机主板。(该以太网部分引用自维基百科)
二、PCI(Peripheral Component Interconnect,外部组件互联标准)
或称 Personal Computer Interface(个人电脑接口),实际应用中简称为 PCI,是一种连接电脑主板和外部设备的总线标准。
一般 PCI 设备可分为以下两种形式:
- 直接内置于主板上的集成电路,在 PCI 规范中称作 “嵌入设备”(planar device);或者
- 安装在插槽上的扩充界面卡
PCI bus 常见于现代的个人电脑中,并已取代了 ISA 和 VESA 局部总线,成为了标准扩充总线。PCI总线亦常见于其他电脑类型中。PCI总线最终将被 PCI Express 和其他更先进的技术取代,这些技术现在已经被用于最新款的电脑中。
PCI 规范规定了该总线的物理尺寸(包括线宽)、电气特性、总线时序和协议。该规范可从美国 PCI-SIG 协会购得。
常见的 PCI 卡包括网卡、声卡、调制解调器、电视卡和硬盘控制器等,另外还有 USB 和串行端口等端口。原本显卡通常也是 PCI 设备,但很快其频宽已不足以支持显卡的性能。PCI 显卡现在仅用在需要额外的外接显示器或主板上没有 AGP 和 PCI Express 槽的情况。(该 PCI 部分引用自维基百科)
三、Linux的网络接口
Linux 的网络接口(interface)并不存在一定的命名规范,但都是有意义的:
- eth0:一般用于以太网(Ethernet)接口,0 表示是第一块网卡
- wifi0:wifi 是无线局域网,因此 wifi0 一般指无线网络接口
- ath0:一般指 atheros 芯片所包含的无线网络接口
- lo:local,一般指本地环回接口,是一种虚拟网络接口,基本每个 Linux 都有这个接口
虚拟网络接口并不真实地从外界接受和发送数据包,而是在系统内部接受和发送数据包,因此虚拟网络接口不需要驱动程序。
虚拟网络接口和真实的网络接口在使用上是一致的。
命令 lspci 可以显示当前主机的所有 PCI 总线信息,以及所有已连接的 PCI 设备信息。(如果是 usb 网卡,则可能需要使用 lsusb 命令)。
命令 ifconfig 用来查看网络接口信息:
ifconfig -a 查看所有接口 ifconfig eth0 查看特定接口
命令 ifup 、 ifdown 用来激活、禁用一个网络接口:
ifup eth0 激活eth0 ifdown eth0 禁用eth0
下面是我在 Vitual Box 里 CentOS 6.9 的一些硬件信息。
PCI 设备信息:
网络接口信息:
上图中网卡 eth0 的参数信息如下:
第 1 行 连接类型(Link encap):Ethernet(以太网);硬件地址(MAC地址):08:00:27:85:37:B4 第 2 行 IPv4 地址(inet addr)、子网(Bcast)、掩码(Mask) 第 3 行 IPv6 地址(inet6 addr) 第 4 行 UP:网卡已开启;RUNNING:网卡的网线已经被接上;MULTICAST:支持组播;MUT:最大传输量(单位,字节) 第 5、6 行 接收、发送数据包情况统计 第 8 行 接收、发送数据字节数统计
执行 ifconfig 命令后仅有 IPv6 而没有 IPv4 地址的解决办法:
1. 首先确保你的网卡已经激活(使用 ifup eth0 命令)
2. 使用 dhclient 命令来动态获取 IP,然后再次执行 ifconfig 命令即可看到 Ipv4 地址。
但是系统重启后会失效,永久生效的方法是:
1. 修改相应网卡的配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0,将 ONBOOT 属性设置为 yes,
2. 再执行 service network restart 命令即可。用 ifconfig 命令就可以随时看到 eth0 的 IPv4 地址了。
激活、禁用接口:
四、配置网络信息
使用 setup 命令用类“图形化”界面设置 Linux,在终端输入 setup ,回车,进入交互界面。
一般对 Linux 进行网络配置,过程是这样的:
上图中,选择网络配置 "NetWork configuration","Run Tool" 进入下一步。
上图中,选择硬件配置"Device configuration",回车进入下一步。
上图中,选择配置 eth0 网卡,回车下一步。
上图中,各个参数依次是:
Name: 接口名 Device: 设备名 Use DHCP: 是否使用DHCP方式获取IP(家用电脑一般是,服务器IP一般否、需要配置静态IP) Static IP: 静态IP Netmask: 子网掩码 Default gateway IP: 默认网关IP(一般是192.168.1.1,要与IP属同一网段) Primary DNS Server: 主DNS服务器IP Secondary DNS Server: 备用DNS服务器IP Peer DNS: 是否接受DHCP服务器指派的DNS服务器地址 On boot: 是否开机启动 Controlled by NetworkManager: 是否受图像化的网络管理器NetworkManager控制。
配置网络参数如下:
上图中,配置完毕,后面基本都是确定保存下一步。"Ok" 下一步。
上图中,"Save" 进入下一步。
上图中,"Save&Quit" 进入下一步。
上图中,"Quit" 退出 setup 命令环境。
eth0 的网络参数配置完毕,最后记得使用 ifup eth0 激活接口即可:
可以看到,最新的接口信息里,eth0 的 IP 地址已经变成了我们刚刚设置的 192.168.1.210
如果你使用 ifup eth0 无法激活 eth0 接口,那么请检查你的 eth0 配置参数,很可能是 IP 配错了,比如一高兴配了个 192.168.1.666。至于我是怎么知道的,就不说了~~
五、网络配置相关文件
文件 | 路径 |
网卡eth0的配置文件 | /etc/sysconfig/network-scripts/ifcfg-eth0 |
DNS配置文件 | /etc/resolv.conf |
主机名配置文件 | /etc/sysconfig/network |
静态主机名配置文件 | /etc/hosts |
1. 网卡eth0的配置文件
/etc/sysconfig/network-scripts/ifcfg-eth0:
参数解释如下:
DEVICE:设备名 HWADDR:硬件地址(MAC地址) TYPE:连接类型(譬如Ethernet,以太网) UUID:设备标识号 ONBOOT:是否随开机启动激活 NM_COTROLLED:是否受图像化的程序NetworkManager控制 BOOTPROTO:启动协议(none|static|dhcp,static静态获取IP,dhcp动态获取IP) USERCTL:是否允许普通用户控制此接口 PEERDNS:是否接受DHCP服务器指派的DNS服务器地址 IPV6INIT:是否支持IPv6 IPADDR:IPv4地址 NETMASK:子网掩码 GATEWAY:网关 DNS1、DNS2:俩DNS
2. DNS配置文件
/etc/resolv.conf:
一行一个DNS配置,这是我们刚才已经配过的两个DNS。
3.主机名配置文件
/etc/sysconfig/network:
4.静态主机名配置文件
/etc/hosts:
六、网络测试命令
测试网络连通性:
ping 192.168.1.210 ping www.locallinux.com
测试 DNS 解析:
host www.locallinux.com dig www.locallinux.com
显示路由表:
ip route
追踪到达目的地址过程中经过的网络路径:
traceroute www.locallinux.com
使用 mtr 命令进行网络质量测试(结合了 traceroute 和 ping ,会显示一个动态更新的路由表):
mtr www.locallinux.com
七、修改主机名
暂时性修改主机名:
hostname www.localhost.com
永久性修改主机名:
修改主机名配置文件/etc/sysconfig/network: HOSTNAME=www.localhost.com
八、网络故障排查
网络故障排查遵循从底层到高层、从自身到外部的流程进行。
1. 首先检查网络配置是否正确:
IP地址 子网掩码 网关 DNS
2. 检查到达网关是否连通:
ping 网关IP
3. 检查DNS解析是否正常:
host www.locallinux.com host www.cnblogs.com host www.runoob.com
参考链接: