Linux系统之主机网络配置方式

2025-03-26 02:50

本文主要是介绍Linux系统之主机网络配置方式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《Linux系统之主机网络配置方式》:本文主要介绍Linux系统之主机网络配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教...

一、查看主机的网络参数

主机名、IP地址、掩码、网关、DNS服务器地址

1、查看主机名

[root@localhost ~]# hostname
localhost.localdomain

[root@localhost ~]# hostnamectl set-hostname martin-host.linux.com
[root@localhost ~]# 

[root@localhost ~]# hostname
martin-host.linux.com

主机名建议以FQDN格式设置 

2、查看IP地址

[root@martin-host ~]# ifconfig 
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.140.144  netjavascriptmask 255.255.255.0  broadcast 192.168.140.255
        inet6 fe80::a4f5:a457:cfac:3860  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:c5:04:aa  txqueuelen 1000  (Ethernet)
        RX packets 1910  bytes 2214938 (2.1 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1090  bytes 90php444 (88.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

MTU: 最大传输单元 
RX:接收的数据流量 
TX:发送的数据流量 

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 92  bytes 7800 (7.6 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 92  bytes 7800 (7.6 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
[root@martin-host ~]# ip a 
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00python:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:c5:04:aa brd ff:ff:ff:ff:ff:ff
    inet 192.168.140.144/24 brd 192.168.140.255 scope global noprefixroute dynamic ens33
       valid_lft 1197sec preferred_lft 1197sec
    inet6 fe80::a4f5:a457:cfac:3860/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

3、查看网关

[root@martin-host ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.140.2   0.0.0.0         UG    100    0        0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
192.168.140.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33

4、查看DNS

[root@martin-host ~]# cat /etc/resolv.conf 
# Generated by NetworkManager
search localdomain linux.com
nameserver 192.168.140.2

二、配置网卡

1、修改网卡配置文件

// 查看网卡的配置文件 
[root@martin-host ~]# ls /etc/sysconfig/network-scripts/
ifcfg-ens33  ifdown-ipv6    ifdown-TeamPort  ifup-ippp   ifup-routes       network-functions
ifcfg-lo
[root@martin-host ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet"
BOOTPROTO=none
IPADDR=192.168.140.144
PREFIX=24
GATEWAY=192.168.140.2
DNS1=114.114.114.114
DNS2=223.5.5.5
NAME="ens33"
DEVICE="ens33"
ONBOOT="yes"

[root@martin-host ~]# nmcli connection reload 
[root@martin-host ~]# nmcli connection up ens33
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/7)
[root@martin-host ~]# ifconfig ens33
ens33: flags=4163<UP,BROADCAST,RjavascriptUNNING,MULTICAST>  mtu 1500
        inet 192.168.140.144  netmask 255.255.255.0  broadcast 192.168.140.255
        inet6 fe80::20c:29ff:fec5:4aa  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:c5:04:aa  txqueuelen 1000  (Ethernet)
        RX packets 3622  bytes 2367174 (2.2 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2293  bytes 240672 (235.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@martin-host ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.140.2   0.0.0.0         UG    100    0        0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
192.168.140.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33

[root@martin-host ~]# cat /etc/resolv.conf 
# Generated by NetworkManager
search linux.com
nameserver 114.114.114.114
nameserver 223.5.5.5

2、nmcli工具【通用】

  • 查看网卡配置
[root@martin-host ~]# nmcli connection show 
NAME    UUID                                  TYPE      DEVICE 
ens33   c96bc909-188e-ec64-3a96-6a90982b08ad  ethernet  ens33  
virbr0  da62b2db-38ab-455a-bea1-a9bc9fa6f484  bridge    virbr0 
  • 删除网卡配置
[root@martin-host ~]# nmcli connection delete ens33 
成功删除连接 "ens33" (c96bc909-188e-ec64-3a96-6a90982b08ad)。
  • 配置网卡
// 创建网卡配置,名称为ens33
[root@localhost ~]# nmcli connection add type ethernet ifname ens33 con-name ens33 
连接 "ens33" (a48997c5-50f2-4e1b-aef4-34570c36b12b) 已成功添加。

// 配置IP地址、网关、DNS服务器地址 
[root@localhost ~]# nmcli connection modify ens33 ipv4.addresses "172.16.100.20/24"
[root@localhost ~]# nmcli connection modify ens33 ipv4.gateway "172.16.100.2"
[root@localhost ~]# nmcli connection modify ens33 ipv4.dns "114.114.114.114"
[root@localhost ~]# nmcli connection modify ens33 +ipv4.dns "223.5.5.5"

// 将网卡IP的配置方式改为手动配置,默认为dhcp
[root@localhost ~]# nmcli connection modify ens33 ipv4.method manual 
// 设置网卡开机自动激活
[root@localhost ~]# nmcli connection modify ens33 autoconnect on

[root@localhost ~]# nmcli connection reload 
[root@localhost ~]# nmcli connection up ens33
连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/10)

三、vmware虚拟网络工作模式

1、虚拟网络、虚拟网卡

虚拟网络

  • 相当于现实生活中的交换机,用于连接多个虚拟机,实现多个虚拟机的通信
  • 不同虚拟网络间是隔离的

Linux系统之主机网络配置方式

虚拟网卡

  • 每个虚拟网络都会在物理机上生成一块虚拟网卡
  • 作用:通过虚拟网卡将物理机连接到了对应的虚拟网络上,用于实现物理机和虚拟机间的通信

Linux系统之主机网络配置方式

2、虚拟网络工作模式

NAT模式 【常用】

  • NAT, 网络地址转换
  • 原理:当虚拟机主动访问外部网络时,虚拟机的IP地址会被临时转换成物理机的网卡和外界通信
  • 虚拟网络:Vmnet 8
  • 核心依赖的服务:Vmware NAT Service services.msc
  • 合适的IP

Linux系统之主机网络配置方式

桥接模式 / bridge

  • 原理:虚拟机相当于直接接入到现实网络中
  • 作用:方便不同物理机上的虚拟机间的相互通信
  • 关键:虚拟网络和哪个现实网络建立桥接关系 ????

虚拟网络:vmnet 0

  • 仅主机模式 / host only
  • 虚拟网络和外界通信是断的

四、路由设置

1、路由器工作原理

Linux系统之主机网络配置方式

2、静态路由

Linux系统之主机网络配置方式

- 配置静态路由的命令

# route add -net 目的网段 gw 下一跳

3、配置静态路由

Linux系统之主机网络配置方式

开启路由转发功能

// 查看系统参数
[root@linux-01 ~]# sysctl -a 
[root@linux-01 ~]# vim /etc/sysctl.conf 
net.ipv4.ip_forward = 1

[root@linux-01 ~]# sysctl -p 
net.ipv4.ip_forward = 1
  • 添加静态路由
[root@linux-01 ~]# route add -net 192.168.18.0/24 gw 192.168.17.11
[root@linux-01 ~]# 
[root@linux-01 ~]# route -n 
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.16.0    0.0.0.0         255.255.255.0   U     100    0        0 ens33
192.168.17.0    0.0.0.0         255.255.255.0   U     101    0        0 ens37
192.168.18.0    192.168.17.11   255.255.255.0   UG    0      0        0 ens37

4、永久添加路由

rc.local文件

作用:开机自动执行文件中的操作

[root@linux-02 ~]# vim /etc/rc.d/rc.local 
route add -net 192.168.16.0/24 gw 192.168.17.10

[root@linux-02 ~]# chmod a+x /etc/rc.d/rc.local

创建路由文件

/etc/sysconfig/network-scripts/route-出接口

[root@linux-02 ~]# cat /etc/sysconfig/network-scripts/route-ens33
格式:  网段  via  下一跳 dev 出接口
192.168.16.0/24 via 192.168.17.10 dev ens33

[root@linux-02 ~]# nmcli connection reload 
[root@linux-02 ~]# nmcli connection up ens33 
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/3)
 
[root@linux-02 ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.16.0    192.168.17.10   255.255.255.0   UG    102    0        0 ens33

5、测试网络通信的工具

  • ping
  • traceroute
  • 路由跟踪
[root@node01 ~]# traceroute 192.168.18.11
traceroute to 192.168.18.11 (192.168.18.11), 30 hops max, 60 byte packets
 1  gateway (192.168.16.11)  0.219 ms  0.154 ms  0.141 ms
 2  192.168.17.11 (192.168.17.11)  0.439 ms  0.429 ms  0.494 ms
 3  192.168.18.11 (192.168.18.11)  0.657 ms  0.634 ms  0.600 ms
[root@node01 ~]# traceroute 192.168.18.11
traceroute to 192.168.18.11 (192.168.18.11), 30 hops max, 60 byte packets
 1  gateway (192.168.16.11)  0.240 ms  0.117 ms  0.070 ms
 2  * * *
 3  * * *
 4  * * *
 5  * * *
C:\Users\admin>tracert www.jd.com

通过最多 30 个跃点跟踪
到 wwwv6.jcloudimg.com [124.200.112.6] 的路由:

  1     2 ms     1 ms     2 ms  10.11.0.1
  2     *        *        *     请求超时。
  3    15 ms     4 ms     4 ms  101.39.210.93
  4     7 ms     5 ms     4 ms  10.255.58.241
  5    18 ms     7 ms     2 ms  10.255.60.25
  6     2 ms     7 ms     4 ms  218.241.165.97
  7     5 ms     2 ms     2 ms  10.240.41.185
  8     3 ms     2 ms     2 ms  10.240.38.38
  9     3 ms     3 ms     3 ms  10.14.224.22
 10php     3 ms     2 ms     2 ms  124.200.112.6

跟踪完成。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持China编程(www.chinasem.cn)。

这篇关于Linux系统之主机网络配置方式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1153940

相关文章

mybatis映射器配置小结

《mybatis映射器配置小结》本文详解MyBatis映射器配置,重点讲解字段映射的三种解决方案(别名、自动驼峰映射、resultMap),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定... 目录select中字段的映射问题使用SQL语句中的别名功能使用mapUnderscoreToCame

防止Linux rm命令误操作的多场景防护方案与实践

《防止Linuxrm命令误操作的多场景防护方案与实践》在Linux系统中,rm命令是删除文件和目录的高效工具,但一旦误操作,如执行rm-rf/或rm-rf/*,极易导致系统数据灾难,本文针对不同场景... 目录引言理解 rm 命令及误操作风险rm 命令基础常见误操作案例防护方案使用 rm编程 别名及安全删除

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Vite 打包目录结构自定义配置小结

《Vite打包目录结构自定义配置小结》在Vite工程开发中,默认打包后的dist目录资源常集中在asset目录下,不利于资源管理,本文基于Rollup配置原理,本文就来介绍一下通过Vite配置自定义... 目录一、实现原理二、具体配置步骤1. 基础配置文件2. 配置说明(1)js 资源分离(2)非 JS 资

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

MySQL8 密码强度评估与配置详解

《MySQL8密码强度评估与配置详解》MySQL8默认启用密码强度插件,实施MEDIUM策略(长度8、含数字/字母/特殊字符),支持动态调整与配置文件设置,推荐使用STRONG策略并定期更新密码以提... 目录一、mysql 8 密码强度评估机制1.核心插件:validate_password2.密码策略级

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二

HTTP 与 SpringBoot 参数提交与接收协议方式

《HTTP与SpringBoot参数提交与接收协议方式》HTTP参数提交方式包括URL查询、表单、JSON/XML、路径变量、头部、Cookie、GraphQL、WebSocket和SSE,依据... 目录HTTP 协议支持多种参数提交方式,主要取决于请求方法(Method)和内容类型(Content-Ty