Linux 基础-7

网络配置

ip 是 iproute2 软件包中的网络配置工具,可以配置路由、网络设备、策略路由和隧道等

ip [ OPTIONS ] OBJECT { COMMAND | help }

# 常用对象 OBJECT={ link | addr | addrlabel | route | rule }
# -V 软件版本
# -s 输出详细信息
# -f 强制使用指定协议族
# -4 指定使用 IPv4 协议
# -6 指定使用 IPv6 协议
# -r 使用主机的域名代替 IP 地址输出
ip link show                                             # 显示网络接口信息
ip link set enp0s8 up                                    # 启用 enp0s8 网卡
ip link set enp0s8 promisc on                            # 开启网卡的混合模式
ip link set enp0s8 mtu 1400                              # 设置网卡最大传输单元
ip -s link list                                          # 查看网卡详细信息
ip addr show                                             # 显示网卡地址
ip addr add 192.168.1.1/24 dev enp0s8                    # 设置网卡 enp0s8 地址
ip addr del 192.168.1.1/24 dev enp0s8                    # 删除网卡 enp0s8 地址
ip route show                                            # 显示系统路由,同 ip route list
ip route add default via 192.168.1.254                   # 设置默认路由
ip route add 192.168.1.100 dev enp0s8                    # 添加静态路由,指定出接口
ip route add 192.168.2.0/24 via 192.168.1.2 metric 10    # 添加静态路由,指定下一跳地址
ip route del default                                     # 删除默认路由
ip route del 192.168.1.0/24                              # 删除静态路由

网卡配置文件

CentOS 的配置文件通常在 /etc/sysconfig/network-scripts/ 目录下

TYPE=Ethernet                              # 接口类型
PROXY_METHOD=none                          # 获取地址方式,none (静态配置)、dhcp (动态获取)
BROWSER_ONLY=no                            # 是否仅在启动时尝试获取 IP 地址
BOOTPROTO=none                             # 引导协议, none、dhcp、bootp、static
DEFROUTE=yes                               # 是否添加默认路由到路由表
IPV4_FAILURE_FATAL=no                      # 如果 IPv4 配置失败是否停止启动
NAME=enp0s3                                # 网卡名称
UUID=746f3ff2-0407-4f8d-be5c-17ebce43907c  # 唯一标识码
DEVICE=enp0s3                              # 接口名称
ONBOOT=yes                                 # 启动时是否激活网络接口
IPADDR=192.168.56.101                      # 网络地址
PREFIX=24                                  # 子网掩码位数
GATEWAY=192.168.56.1                       # 默认网关地址

Debian 的网卡配置文件通常位于 /etc/network/interfaces

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
# allow-hotplug enp0s3

auto enp0s3                    # 开机自动激活
iface enp0s3 inet static       # 静态配置
	address 192.168.56.100     # 网络地址
	netmask 255.255.255.0      # 子网掩码
	gateway 192.168.56.1       # 网关

常见网络配置工具

ifconfignmclinmtuinetplannetworkctl

网络诊断工具

ping 用于测试主机之间网络连通性

ping [options] <destination>
ping 127.0.0.1
# -c 设置发包次数
# -v 显示详细信息
# -s 设置数据包大小
# -t 设置 TTL 值

netstat 显示端口连接状态

netstat [options]
# -a 显示所有内容
# -l 显示监听中的状态
# -u 显示 udp 连接
# -t 显示 tcp 连接
# -n 不显示别名
# -p 显示进程
# -r 显示路由表
# -s 显示统计表
# -c 动态显示

ssnetstat 一样,显示连接状态信息

ss [options]
# -a 显示所有内容
# -l 显示监听中的状态
# -u 显示 udp 连接
# -t 显示 tcp 连接
# -n 不显示别名
# -p 显示进程
# dst address 匹配目的地址
# src address 匹配源地址 

lsof 用于查看系统端口情况

lsof [options]
# -i 指定端口号
# -c 显示进程正在打开的文件
# -p 指定进程号
# +d / 显示/目录下被开启的文件
# +D 递归所有文件

nslookup 用于查询域名服务器信息

nslookup [address]
nslookup www.bing.com

last 查看登录记录

last [options]
# -a 将 IP 地址显示在最后一列
# -d 将 IP 解析成域名
# -f 指定文件
# -R 不显示 IP 地址
# -x 显示关机、重启、执行等级变更等信息

lastlog 查看用户最近一次登录信息

lastlog [options]
# -b 指定天数前的登录信息
# -t 指定天数以来的登录信息
# -u 指定用户最近的登录信息

tracerouter 跟踪数据包访问目标的路径

traceroute 127.0.0.1
# -P 指定端口号
# -s 指定源地址

地址解析配置文件

/etc/hostname 文件用于配置主机名,也可以通过 hostnamectl 来修改主机名,主机名修改后需要重启系统才能生效

# CentOS
hostnamectl set-hostmane example

# Debian
hostnamectl hostname example

/etc/host.conf 文件定义主机名到 IP 地址的映射关系,或者用于控制主机名解析的策略

multi on # 允许主机名可以对应多个 IP 地址
order hosts,bind # 指定主机名解析的顺序: 本地解析、DNS 解析
nospoof on # 防止对本地网络上的主机名进行 DNS 欺骗

/etc/hosts 文件用于定义静态的主机名到 IP 地址的映射

127.0.0.1	localhost
::1     localhost ip6-localhost ip6-loopback
# IP 地址    域名1 域名2 ...

/etc/resolv.conf 文件用于定义 DNS 解析

nameserver 8.8.8.8 # 指定 DNS 服务器地址
domain example.com # 设置默认搜索域。当访问 www 时,系统会自动尝试解析 www.example.com
search example.com # 定义搜索列表。如果查询失败,将尝试添加 example.com 后缀进行解析
sortlist 192.168.1.0/255.255.255.0 192.168.2.1 # 对返回地址进行排序。如果查询返回的地址在192.168.1.0/24的范围内,这些地址将会被优先使用,其次用 192.168.2.1
上一篇
下一篇