Linux 网络接口命令

网络

ping

向被测试目的主机地址发送ICMP报文并收取回应报文

  • -c:要求回应的次数
  • -i:发送ICMP报文时间间隔
  • -R:记录路由过程
  • -s:数据包大小
  • -t:存活数值(路由跳数限制)

ifconfig

显示、设置网络

  • netmask:设置网卡子网掩码
  • up:启动指定网卡
  • down:关闭指定网络设备
  • ip:指定网卡ip地址

netstat

显示与网络相关的状态信息:查看网络连接状态、接口配置信息、 检查路由表、取得统计信息

  • -a:显示网络所有连接中的scoket
  • -c:持续列出网络状态
  • -i:显示网络界面信息表单
  • -n:直接使用IP地址而不是主机名称
  • -N:显示网络硬件外围设备号连接名称
  • -s:显示网络工作信息统计表
  • -t:显示TCP传输协议连接状况

route

查看、配置Linux系统上的路由信息

traceroute

跟踪UDP路由数据报

  • -g:设置来源来路由网关
  • -n:直接使用IP地址而不是主机名称
  • -p:设置UDP传输协议的通信端口
  • -s:设置本地主机送出数据包的IP地址
  • -w:超时秒数(等待远程主机回报时间)

Linux 网络接口配置

网络配置

HOST

/etc/hostname

设置主机名称,直接填写字符串即可

1
PC-NAME

/etc/hosts

ipd地址-主机名称映射

  • 理论上说,这里主机名称应该是本机称呼,不要求其他主机 /etc/hostname与这里的主机名一致
1
2
3
127.0.0.1 localhost
xxx.xxx.xxx.xxx name
xxx.xxx.xxx.xxx domain.name

DNS Resolver

相关问题

  • Temporary failure in name resolution
    • 问题:可能是DNS服务器配置缺失、错误
    • 场景:$ ping
    • 解决:设置nameserver配置DNS服务器地址

/etc/resolv.conf

域名解析器(resolver)(DNS客户机)配置文件

  • 设置DNS服务器IP地址、DNS域名
  • 包含主机域名搜索顺序
1
2
3
4
nameserver		114.114.114.114		# DNS服务器IP地址
domain localhost # 本地域名
search search_list # 域名搜索列表
sortlist # 允许将得到域名结果进行排序

说明

  • nameserver:可以有多,每行一个ip地址,查询时按照 顺序依次查找
  • domain:声明主机域名
    • 查询无域名主机时需要使用
    • 邮件系统需要使用
    • 未配置则使用主机名
  • search:其参数指明域名查询顺序
    • 查询无域名主机时,将在其参数声明域中分别查找
    • domainsearch不共存,同时存在时,后者覆盖前者
  • sortlist:对得到的域名结果进行特定排序
    • 参数未网络/掩码对时,允许任意排列顺序

系统设置/etc/sysconfig

/etc/sysconfig/network[-scripts]

文件夹包含网卡配置文件

一般linux

  • ifcfg-ethXX:linux默认ethernet网卡配置文件名称
  • ifcfg-wlanXX:无线局域网网卡配置文件名称

CentOS7网卡名称

  • 前两个字符

    • en:Enthernet以太网
    • wl:WLAN无线局域网
    • ww:WWAN无线广域网
  • 第3个字符

    • o<index>:on-board device index number,
    • s<slot>:hotplug slot index number
    • x<MAC>:MAC address
    • p<bus>s<slot>:PCI geographical location/USB port number chain
  • 命名优先级

    • 板载设备:固件、BIOS提供的索引号信息可读:eno1
    • 固件、BIOS提供的PCI-E热拔插索引号可读:ens33
    • 硬件接口物理位置:enp2s0
    • linux传统方案:eth0
    • 接口MAC地址:enxXXXXXXXXXXXXXXXXX,默认不使用, 除非用户指定使用
  • 示例

    • enoXX:主板bios内置网卡
    • ensXX:主板bios内置PCI-E网卡
    • enpXXs0:PCI-E独立网卡
恢复传统命名方式

编辑grub文件,然后使用grub2-mkconfig重新生成 /boot/grub2/grub.cfg,这样系统就会根据传统linux网卡文件 命名方式查找配置文件

1
2
3
	# `/etc/sysconfig/grub`
GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"
# 为`GRUB_CMDLINE_LINUX`增加2个参数

CentOS7配置格式

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
DEVICE=ens33				# 网络连接名称(实际显示的网络名称)
NAME=ens33 # 网卡物理设备名称
TYPE = Ethernet # 网卡类型:以太网
ONBOOT=yes # 开机启动:是
DEFROUTE=yes # 是否设置此网卡为默认路由:是
NM_CONTROLLED=yes # 是否可由Network Manager托管:是

BOOTPROTO=dhcp # 网卡引导协议
# `none`:禁止DHCP
# `static`:启用静态IP地址
# `dhcp`:开启完整DHCP服务
IPADDR=xxx.xxx.xxx.xxx # IP地址
IPV4_FAILURE_FATAL=no # IPV4致命错误检测(失败禁用设备):否
IPV6INIT=yes # IPV6自动初始化:是
IPV6_AUTOCONF=yes # IPV6自动配置:是
IPV6_DEFROUTE=yes # IPV6是否可为默认路由:是
IPV6_FAILURE_FATAL=no # IPV6致命错误检测(失败禁用设备):否
IPV6_ADDR_GEN_MODE=stable-privacy
# IPV6地地址生成模型:stable-privacy

DNS1=xxx.xxx.xxx.xxx # DNS服务器地址1
DNS2=xxx.xxx.xxx.xxx # DNS服务器地址2
PEERDNS=no # 是否允许DHCP获得DNS覆盖本地DNS:否
GATEWAY=xxx.xxx.xxx.xxx # 网关
PREFIX=24 # 子网掩码使用24位
NETMASK=255.255.255.0 # 子网掩码
# 两个参数应该只需要使用一个即可
BROADCAST=

HWADDR=xxxxxxxxxx # 接口MAC地址
# 配置文件都会被执行,`HWADDR`
# 能匹配上硬件,配置才会生效,
# 否则硬件使用默认配置
# 若多个配置文件配置相同`HWADDR`
# 则操作network服务时报错
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
# 通用唯一识别码:不能相同(注意虚拟机)

PROXY_METHOD=none # 代理方式:无
BROWSER_ONLY=no # 仅浏览器:否

USERCTL=no # 是否允许非root用户控制此设备:否
MASTER= # 主设备名称?
SLAVE= # 从社会名称?
NETWORK= # 网络地址