Linux网络配置

本文主要介绍了Linux系统中查看网络接口信息及相关配置的命令,如ifconfig查看网络接口信息、ip查看设备ip地址、hostname修改主机名等,还涉及临时配置网址、查看路由表、测试网络连接性、域名解析等内容,同时提及了重要文件路径和网卡配置参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

查看网络接口信息

ifconfig:查看所有网络接口信息

​编辑

临时配置网址

网络接口配置文件:

ip:查看设备ip地址

hostname 修改主机名

ethtool 显示网卡的详细信息

route 查看路由表

netstat 查看网络连接情况

ss(socket statistics)内核搜索

ping 测试网络连接性

traceroute 路由追踪

nslookup 域名解析


查看网络接口信息
ifconfig:查看所有网络接口信息

语法:

ifconfig [网络接口名称]:查看网络接口信息

通常查看ens33接口

[ens33]

  • en:Ether Net,表示网卡类型为以太网

  • s:表示热插拔卡槽上的设备(hot-plug Slot)

  • 33:表示插槽编号

centos6的默认网卡是eth0(eth0是自定义名称)

centos7的默认网卡是ens33(ens33代表以太网第33号接口)

<span style="background-color:#dadada"><span style="color:#1f0909"> [root@localhost ~]<span style="color:#aa5500">#ifconfig ens33</span>
 ens33<span style="color:#0000ff">:flags</span><span style="color:#981a1a">=</span><span style="color:#116644">4163</span><up,BROADCAST,RUNNING,MULTICAST> mut <span style="color:#116644">1500</span>
        <span style="color:#aa5500">#    接口已启用,支持广播,正在运行,支持组播    最大传输单元1500字节  </span>
        inet <span style="color:#116644">192</span>.168.190.129  netmask <span style="color:#116644">255</span>.255.255.0  broadcast <span style="color:#116644">192</span>.168.190.255  
        <span style="color:#aa5500">#    ip地址                    子网掩码                  广播地址</span>
        inet6 fe80::6e7:f7a9:1cd6:166e  prefixlen <span style="color:#116644">64</span>  scopeid 0x2<link>
        <span style="color:#aa5500">#     IPV6地址                   子网长度       作用域,link:仅该接口有效</span>
        ether <span style="color:#116644">00</span>:0c:29:38:ef:61  txqueuelen <span style="color:#116644">1000</span>  (Ethernet)
        <span style="color:#aa5500">#     mac地址             传输队列长度        接口类型:以太网</span>
        RX packets <span style="color:#116644">2943</span>  bytes <span style="color:#116644">234118</span> (228.6 KiB)
        <span style="color:#aa5500">#接收 报文个数     字节数总和</span>
        RX errors <span style="color:#116644">0</span>  dropped <span style="color:#116644">0</span>  overruns <span style="color:#116644">0</span>  frame <span style="color:#116644">0</span>
        <span style="color:#aa5500">#接收 错误    丢弃        溢出         冲突帧数</span>
        TX packets <span style="color:#116644">1133</span>  bytes <span style="color:#116644">135986</span> (132.7 KiB)
        <span style="color:#aa5500">#发送 报文个数     字节数总和 </span>
        TX errors <span style="color:#116644">0</span>  dropped <span style="color:#116644">0</span> overruns <span style="color:#116644">0</span>  carrier <span style="color:#116644">0</span>  collisions
        <span style="color:#aa5500">#发送 错误    丢弃       溢出         载荷数      冲突</span></span></span>
临时配置网址
  • ifconfig 网卡名 ip地址及端口号:临时设置IP地址

<span style="background-color:#dadada"><span style="color:#1f0909"> [root@localhost ~]<span style="color:#aa5500">#ifconfig ens33 192.168.190.66/24</span>
 [root@localhost ~]<span style="color:#aa5500">#ifconfig ens33</span>
 ens33<span style="color:#0000ff">:flags</span><span style="color:#981a1a">=</span><span style="color:#116644">4163</span><up,BROADCAST,RUNNING,MULTICAST> mut <span style="color:#116644">1500</span>
       inet <span style="color:#116644">192</span>.168.190.66  netmask <span style="color:#116644">255</span>.255.255.0  broadcast <span style="color:#116644">192</span>.168.190.255 
       <span style="color:#aa5500">#IP地址修改为192.168.190.66</span>
       <span style="color:#aa5500">#临时修改,重启后失效</span></span></span>

  • ifconfig  网卡名:数字 ip地址/子网掩码:设置虚拟网卡,临时测试使用

  • ifconfig 网卡名 down:关闭网卡(等同于ifdown ens33

  • ifconfig  -a:查看所有网卡

  • ifconfig  -s:查看网络通讯情况

网络接口配置文件:
  • /etc/sysconfig/network-scripts/目录下

<span style="background-color:#dadada"><span style="color:#1f0909"> ifcfg-ens33
 <span style="color:#aa5500">#第一块网卡配置文件</span>
 ​
 [root@localhost ~]<span style="color:#aa5500">#vim /etc/sysconfig/neywork-scripts/ifcfg-ens33</span>
 <span style="color:#0000ff">DEVICE</span><span style="color:#981a1a">=</span>ens33
 <span style="color:#0000ff">BOOTPROTO</span><span style="color:#981a1a">=</span>static
 <span style="color:#0000ff">ONBOOT</span><span style="color:#981a1a">=</span><span style="color:#3300aa">yes</span>
 <span style="color:#0000ff">IPADDR</span><span style="color:#981a1a">=</span><span style="color:#116644">192</span>.168.190.2
 <span style="color:#0000ff">NETMASK</span><span style="color:#981a1a">=</span><span style="color:#116644">255</span>.255.255.0
 <span style="color:#0000ff">GATEWAY</span><span style="color:#981a1a">=</span><span style="color:#116644">192</span>.168.190.129
 <span style="color:#0000ff">DNS1</span><span style="color:#981a1a">=</span><span style="color:#116644">192</span>.168.180.10
 <span style="color:#0000ff">DNS2</span><span style="color:#981a1a">=</span><span style="color:#116644">192</span>.168.170.20
 ​
 [root@localhost ~]<span style="color:#aa5500">#systemctl restart network</span>
 <span style="color:#aa5500">#重启网络服务</span></span></span>

ip:查看设备ip地址

常用命令:ip a

临时修改网卡名称:

<span style="background-color:#dadada"><span style="color:#1f0909"> ip link <span style="color:#770088">set</span> ens33 down
 <span style="color:#aa5500">#首先将原网卡ens33关掉</span>
 ip link <span style="color:#770088">set</span> ens33 name net1
 <span style="color:#aa5500">#修改网卡的名称为net1</span>
 ip link <span style="color:#770088">set</span> net1 up
 <span style="color:#aa5500">#最后重新启动网卡</span></span></span>

永久修改网卡名称:

<span style="background-color:#dadada"><span style="color:#1f0909"> [root@test1 ~]<span style="color:#aa5500">#vim /etc/default/grub</span>
 <span style="color:#0000ff">GRUB_TIMEOUT</span><span style="color:#981a1a">=</span><span style="color:#116644">5</span>
 <span style="color:#0000ff">GRUB_DISTRIBUTOR</span><span style="color:#981a1a">=</span><span style="color:#aa1111">"</span><span style="color:#009900">$(sed 's,release .*</span><span style="color:#0000ff">$,</span><span style="color:#009900">,g' /etc/system-release)</span><span style="color:#aa1111">"</span>
 <span style="color:#0000ff">GRUB_DEFAULT</span><span style="color:#981a1a">=</span>saved
 <span style="color:#0000ff">GRUB_DISABLE_SUBUMENU</span><span style="color:#981a1a">=</span><span style="color:#221199">true</span>
 <span style="color:#0000ff">GRUB_TERMIANL_OUTPUT</span><span style="color:#981a1a">=</span><span style="color:#aa1111">"console"</span>
 <span style="color:#0000ff">GRUB_CMDLINE_LINUX</span><span style="color:#981a1a">=</span><span style="color:#aa1111">"crashkernel=auto rd.lvm.lv=centos/swap rhgb quit net.ifnames=0"</span>
 <span style="color:#aa5500">#在上方行加入 net.ifnames=0</span>
 <span style="color:#0000ff">GRUB_DISABLE_RECOVERY</span><span style="color:#981a1a">=</span><span style="color:#aa1111">"true"</span>
 ​
 [root@localhost ~]<span style="color:#aa5500">#grub2-mkconfig -o /boot/grub2/grub.cfg</span>
 <span style="color:#aa5500">#统一网卡名称</span>
 ​
 [root@localhost ~]<span style="color:#aa5500">#reboot</span>
 [root@localhost ~]<span style="color:#aa5500">#ifconfig</span>
 [root@localhost ~]<span style="color:#aa5500">#cd /etc/sysconfig/network-scripts/</span>
 [root@localhost ~]<span style="color:#aa5500">#ls</span>
 [root@localhost ~]<span style="color:#aa5500">#vim /ifcfg-ens33</span>
 <span style="color:#116644">1</span> <span style="color:#0000ff">TPE</span><span style="color:#981a1a">=</span>Ethernet
   <span style="color:#116644">2</span> <span style="color:#0000ff">PROXY_METHOD</span><span style="color:#981a1a">=</span>none
   <span style="color:#116644">3</span> <span style="color:#0000ff">BROWSER_ONLY</span><span style="color:#981a1a">=</span>no
   <span style="color:#116644">4</span> <span style="color:#0000ff">BOOTPROTO</span><span style="color:#981a1a">=</span>dhcp
   <span style="color:#116644">5</span> <span style="color:#0000ff">DEFROUTE</span><span style="color:#981a1a">=</span><span style="color:#3300aa">yes</span>
   <span style="color:#116644">6</span> <span style="color:#0000ff">IPV4_FAILURE_FATAL</span><span style="color:#981a1a">=</span>no
   <span style="color:#116644">7</span> <span style="color:#0000ff">IPV6INIT</span><span style="color:#981a1a">=</span><span style="color:#3300aa">yes</span>
   <span style="color:#116644">8</span> <span style="color:#0000ff">IPV6_AUTOCONF</span><span style="color:#981a1a">=</span><span style="color:#3300aa">yes</span>
   <span style="color:#116644">9</span> <span style="color:#0000ff">IPV6_DEFROUTE</span><span style="color:#981a1a">=</span><span style="color:#3300aa">yes</span>
  <span style="color:#116644">10</span> <span style="color:#0000ff">IPV6_FAILURE_FATAL</span><span style="color:#981a1a">=</span>no
  <span style="color:#116644">11</span> <span style="color:#0000ff">IPV6_ADDR_GEN_MODE</span><span style="color:#981a1a">=</span>stable-privacy
  <span style="color:#116644">12</span> <span style="color:#0000ff">NAME</span><span style="color:#981a1a">=</span>ens33
  <span style="color:#aa5500">#删除name行,或改为net1</span>
  <span style="color:#116644">13</span> <span style="color:#0000ff">UUID</span><span style="color:#981a1a">=</span>f432e08c-147d-41de-8c75-17d26b7737ad
  <span style="color:#116644">14</span> <span style="color:#0000ff">DEVICE</span><span style="color:#981a1a">=</span>net1
  <span style="color:#aa5500">#将device改为net1</span>
  <span style="color:#116644">15</span> <span style="color:#0000ff">ONBOOT</span><span style="color:#981a1a">=</span>no
 ​
 [root@localhost ~]<span style="color:#aa5500">#systemctl restart network</span>
 [root@localhost ~]<span style="color:#aa5500">#ifconfig</span></span></span>

hostname 修改主机名

临时修改主机名:

<span style="background-color:#dadada"><span style="color:#1f0909"> [root@localhost ~]<span style="color:#aa5500">#hostname wang</span>
 [root@wang ~]<span style="color:#aa5500">#</span>
 <span style="color:#aa5500">#临时修改,重启后还原</span>
 [root@wang ~]<span style="color:#aa5500">#reboot</span>
 [root@localhost ~]<span style="color:#aa5500">#</span></span></span>

永久修改主机名:

<span style="background-color:#dadada"><span style="color:#1f0909"> CentOS <span style="color:#116644">7</span>
 方法一:
 [root@localhost ~]<span style="color:#aa5500">#hostnamectl set-hostname wang</span>
 <span style="color:#aa5500">#重启后生效</span>
 [root@localhost ~]<span style="color:#aa5500">#reboot</span>
 [root@wang ~]<span style="color:#aa5500">#</span>
 方法二:
 [root@localhost ~]<span style="color:#aa5500">#vim /etc/hostname</span>
 wang
 <span style="color:#aa5500">#将原来的名称localhost改为wang</span>
 <span style="color:#aa5500">#只对第一行的名称生效,下面写其他内容无效</span>
 ​
 [root@localhost ~]<span style="color:#aa5500">#reboot</span>
 [root@wang ~]<span style="color:#aa5500">#</span>
 ​
 ​
 CentOS <span style="color:#116644">6</span>
 [root@localhost ~]<span style="color:#aa5500">#vim /etc/sysconfig/network</span>
 <span style="color:#0000ff">NETWORKING</span><span style="color:#981a1a">=</span><span style="color:#3300aa">yes</span>
 <span style="color:#0000ff">HOSTNAME</span><span style="color:#981a1a">=</span>localhost.localdomain
 <span style="color:#aa5500">#将原来的hostname修改</span>
 <span style="color:#aa5500">#保存并重启</span>
 ​</span></span>

ethtool 显示网卡的详细信息
  • ethtool -i ens33:查看网卡详细信息

  • ethtool -p ens33:让ens33网卡端口快速闪烁

route 查看路由表
  • route -n:查看默认路由条目

  • 添加路由:route add -net IP地址/子网掩码 gw 下一跳地址

<span style="background-color:#dadada"><span style="color:#1f0909"> [root@localhost ~]<span style="color:#aa5500">#route add -net 192.168.100.0/24 gw 192.168.190.129</span>
 <span style="color:#aa5500">#                                 添加的网段及子网掩码   连接的下一跳地址</span>
 [root@localhost ~]<span style="color:#aa5500">#route -n</span>
 Kernel IP routing table
 Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
 <span style="color:#116644">0</span>.0.0.0         <span style="color:#116644">192</span>.168.190.2   <span style="color:#116644">0</span>.0.0.0         UG    <span style="color:#116644">100</span>    <span style="color:#116644">0</span>        <span style="color:#116644">0</span> ens33
 <span style="color:#116644">192</span>.168.100.0   <span style="color:#116644">192</span>.168.190.129 <span style="color:#116644">255</span>.255.255.0   UG    <span style="color:#116644">0</span>      <span style="color:#116644">0</span>        <span style="color:#116644">0</span> ens33
 <span style="color:#116644">192</span>.168.122.0   <span style="color:#116644">0</span>.0.0.0         <span style="color:#116644">255</span>.255.255.0   U     <span style="color:#116644">0</span>      <span style="color:#116644">0</span>        <span style="color:#116644">0</span> virbr0
 <span style="color:#116644">192</span>.168.190.0   <span style="color:#116644">0</span>.0.0.0         <span style="color:#116644">255</span>.255.255.0   U     <span style="color:#116644">100</span>    <span style="color:#116644">0</span>        <span style="color:#116644">0</span> ens33
 <span style="color:#aa5500">#可以看到添加了一个新的网段192.168.100.0</span></span></span>

  • 删除路由:route del -net 网段/子网掩码

<span style="background-color:#dadada"><span style="color:#1f0909"> [root@localhost ~]<span style="color:#aa5500">#route del -net 192.168.100.0/24</span>
 <span style="color:#aa5500">#                                 要删除的网段及子网掩码</span>
 [root@localhost ~]<span style="color:#aa5500">#route -n</span>
 Kernel IP routing table
 Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
 <span style="color:#116644">0</span>.0.0.0         <span style="color:#116644">192</span>.168.190.2   <span style="color:#116644">0</span>.0.0.0         UG    <span style="color:#116644">100</span>    <span style="color:#116644">0</span>        <span style="color:#116644">0</span> ens33
 <span style="color:#116644">192</span>.168.122.0   <span style="color:#116644">0</span>.0.0.0         <span style="color:#116644">255</span>.255.255.0   U     <span style="color:#116644">0</span>      <span style="color:#116644">0</span>        <span style="color:#116644">0</span> virbr0
 <span style="color:#116644">192</span>.168.190.0   <span style="color:#116644">0</span>.0.0.0         <span style="color:#116644">255</span>.255.255.0   U     <span style="color:#116644">100</span>    <span style="color:#116644">0</span>        <span style="color:#116644">0</span> ens33
 <span style="color:#aa5500">#此时网段192.168.100.0已删除</span></span></span>

  • 删除默认路由:

<span style="background-color:#dadada"><span style="color:#1f0909"> [root@localhost ~]<span style="color:#aa5500">#route del default</span></span></span>
  • 重新添加路由:

<span style="background-color:#dadada"><span style="color:#1f0909"> [root@localhost ~]<span style="color:#aa5500">#route add default gw 192.168.190.129</span></span></span>

内核调优:开启路由转发

  • Linux系统本身是没有转发功能的,只有路由发送数据

<span style="background-color:#dadada"><span style="color:#1f0909"> [root@localhost network-scripts]<span style="color:#aa5500">#tcpdump -i ens33 -nn icmp</span>
 ​
 临时打开:
 [root@localhost network-scripts]<span style="color:#aa5500">#echo 1 > /proc/sys/net/ipv4/ip_sforward</span>
 或
 [root@localhost network-scripts]<span style="color:#aa5500">#sysctl -w net.ipv4.ip_forward=1</span>
 ​
 永久打开:
 [root@localhost ~]<span style="color:#aa5500">#vim /etc/sysctl.conf</span>
 net.ipv4.ip_forward <span style="color:#981a1a">=</span> <span style="color:#116644">1</span>
 <span style="color:#aa5500">#将配置写入文件</span>
  
 [root@localhost ~]<span style="color:#aa5500">#sysctl -p</span>
 <span style="color:#aa5500">#读取修改后的配置</span></span></span>

netstat 查看网络连接情况

功能与ss相似

语法:

netstat [选项] 

[选项]:

  • -a:显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口)

  • -n:以数字的形式显示相关的主机地址、端口等信息

  • -r:显示路由表信息

  • -l:显示处于监听(Listening)状态的网络连接及端口信息

  • -t:查看 TCP(Transmission Control Protocol,传输控制协议)相关的信息

  • -u:显示 UDP(User Datagram Protocol,用户数据报协议)协议相关的信息

  • -p:显示与网络连接相关联的进程号、进程名称信息(该选项需要 root 权限)

<span style="background-color:#dadada"><span style="color:#1f0909"> [root@test ~]<span style="color:#aa5500">#systemctl start httpd</span>
 [root@test ~]<span style="color:#aa5500">#netstat -ntap |grep 80</span>
 tcp        <span style="color:#116644">0</span>      <span style="color:#116644">0</span> <span style="color:#116644">0</span>.0.0.0:22              <span style="color:#116644">0</span>.0.0.0:*               LISTEN      <span style="color:#116644">6809</span>/sshd           
 tcp        <span style="color:#116644">0</span>      <span style="color:#116644">0</span> <span style="color:#116644">192</span>.168.190.130:42016   <span style="color:#116644">60</span>.191.80.11:80         TIME_WAIT   <span style="color:#0000cc">-</span>                   
 tcp        <span style="color:#116644">0</span>      <span style="color:#116644">0</span> <span style="color:#116644">192</span>.168.190.130:42004   <span style="color:#116644">60</span>.191.80.11:80         TIME_WAIT   <span style="color:#0000cc">-</span>                   
 tcp        <span style="color:#116644">0</span>      <span style="color:#116644">0</span> <span style="color:#116644">192</span>.168.190.130:42020   <span style="color:#116644">60</span>.191.80.11:80         TIME_WAIT   <span style="color:#0000cc">-</span>                   
 tcp        <span style="color:#116644">0</span>      <span style="color:#116644">0</span> <span style="color:#116644">192</span>.168.190.130:51610   <span style="color:#116644">202</span>.141.160.110:80      TIME_WAIT   <span style="color:#0000cc">-</span>                   
 tcp6       <span style="color:#116644">0</span>      <span style="color:#116644">0</span> :::80                   :::*                    LISTEN      <span style="color:#116644">15617</span>/httpd         
 tcp6       <span style="color:#116644">0</span>      <span style="color:#116644">0</span> :::22                   :::*                    LISTEN      <span style="color:#116644">6809</span>/sshd 
 [root@test ~]<span style="color:#aa5500">#netstat -ntap |grep ":22"</span>
 tcp        <span style="color:#116644">0</span>      <span style="color:#116644">0</span> <span style="color:#116644">0</span>.0.0.0:22              <span style="color:#116644">0</span>.0.0.0:*               LISTEN      <span style="color:#116644">6809</span>/sshd           
 tcp        <span style="color:#116644">0</span>     <span style="color:#116644">36</span> <span style="color:#116644">192</span>.168.190.130:22      <span style="color:#116644">192</span>.168.190.1:10422     ESTABLISHED <span style="color:#116644">12298</span>/sshd: root@pt 
 tcp6       <span style="color:#116644">0</span>      <span style="color:#116644">0</span> :::22                   :::*                    LISTEN      <span style="color:#116644">6809</span>/sshd     
 ​</span></span>

ss(socket statistics)内核搜索
  • 查看网络连接状况,但主要用于获取socket(内核态)统计信息,比用户态更加直接

  • 能够显示更多更详细的有关TCP和连接状态的信息,比netstat更加快速、高效

  • 利用TCP协议栈中的tcp_diag,他是一个用于分析统计的模块,可以获得内核中的第一手信息

语法:

ss [选项]

[选项]:

  • -t:tcp协议相关,只显示tcp协议

  • -u:udp协议相关,只显示udp协议

  • -w:裸套接字相关

  • -x:unix sock相关

  • -l:listen状态的连接

  • -a:所有

  • -n:数字格式

  • -p:相关的程序及PID

  • -e:扩展的信息

  • -m:内存用量

  • -o:计时器信息

  • -r:--resolve 把 IP 解释为域名,把端口号解释为协议名称。 dns 服务

可以与time命令比较time ss -atn

常用命令:

  • ss -natp

  • ss -naup

ping 测试网络连接性

常用命令:

  • ping -c:发送多少个包

  • ping -w:表示等待10秒

traceroute 路由追踪
  • traceroute IP地址

nslookup 域名解析
  • nslookup 域名

  • dig:显示更多详细信息

CDN:缓存服务器,内容分发网络(静态资源)

DNS:

<span style="background-color:#dadada"><span style="color:#1f0909"> 配置文件:
 /etc/resolv.conf
 ​
 [root@localhost ~]<span style="color:#aa5500">#vim /etc/resolv.conf</span>
 search localdomain
 nameserver <span style="color:#116644">202</span>.106.0.20
 nameserver <span style="color:#116644">202</span>.106.148.1
 <span style="color:#aa5500">#CentOS 7需要再NetworkManager.conf文件main段内设置dns=none,并重启NetworkManager服务,或者使用CentOS 7新添加nmcil命令进行设置</span>
 ​</span></span>

补充:nslookup、dns、cdn等都与电商平台有关

重要文件路径:(服务器开启时优先检索以下文件)

  • /etc/hostname:主机名与IP地址的映射记录

  • /etc/hosts:域名解析文件,优先级最高

  • /etc/resolv.conf:域名解析服务器地址

本章重要命令:

  • route -n:查看网关

  • ifconfig:查看IP地址

  • nslookup:解析域名(Linux和Windows通用命令)

修改网卡配置

DEVICE=

BOOTPROTO=

ONBOOT=

IPADDR=

NETMAK(PREFIX)=

GATEWAY=

DNS1=

DNS2=

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值