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

相关文章

最新Spring Security的基于内存用户认证方式

《最新SpringSecurity的基于内存用户认证方式》本文讲解SpringSecurity内存认证配置,适用于开发、测试等场景,通过代码创建用户及权限管理,支持密码加密,虽简单但不持久化,生产环... 目录1. 前言2. 因何选择内存认证?3. 基础配置实战❶ 创建Spring Security配置文件

Python获取浏览器Cookies的四种方式小结

《Python获取浏览器Cookies的四种方式小结》在进行Web应用程序测试和开发时,获取浏览器Cookies是一项重要任务,本文我们介绍四种用Python获取浏览器Cookies的方式,具有一定的... 目录什么是 Cookie?1.使用Selenium库获取浏览器Cookies2.使用浏览器开发者工具

PyCharm中配置PyQt的实现步骤

《PyCharm中配置PyQt的实现步骤》PyCharm是JetBrains推出的一款强大的PythonIDE,结合PyQt可以进行pythion高效开发桌面GUI应用程序,本文就来介绍一下PyCha... 目录1. 安装China编程PyQt1.PyQt 核心组件2. 基础 PyQt 应用程序结构3. 使用 Q

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Redis MCP 安装与配置指南

《RedisMCP安装与配置指南》本文将详细介绍如何安装和配置RedisMCP,包括快速启动、源码安装、Docker安装、以及相关的配置参数和环境变量设置,感兴趣的朋友一起看看吧... 目录一、Redis MCP 简介二、安www.chinasem.cn装 Redis MCP 服务2.1 快速启动(推荐)2.

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

Java获取当前时间String类型和Date类型方式

《Java获取当前时间String类型和Date类型方式》:本文主要介绍Java获取当前时间String类型和Date类型方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录Java获取当前时间String和Date类型String类型和Date类型输出结果总结Java获取

Linux下在线安装启动VNC教程

《Linux下在线安装启动VNC教程》本文指导在CentOS7上在线安装VNC,包含安装、配置密码、启动/停止、清理重启步骤及注意事项,强调需安装VNC桌面以避免黑屏,并解决端口冲突和目录权限问题... 目录描述安装VNC安装 VNC 桌面可能遇到的问题总结描js述linux中的VNC就类似于Window

linux下shell脚本启动jar包实现过程

《linux下shell脚本启动jar包实现过程》确保APP_NAME和LOG_FILE位于目录内,首次启动前需手动创建log文件夹,否则报错,此为个人经验,供参考,欢迎支持脚本之家... 目录linux下shell脚本启动jar包样例1样例2总结linux下shell脚本启动jar包样例1#!/bin

MySQL多实例管理如何在一台主机上运行多个mysql

《MySQL多实例管理如何在一台主机上运行多个mysql》文章详解了在Linux主机上通过二进制方式安装MySQL多实例的步骤,涵盖端口配置、数据目录准备、初始化与启动流程,以及排错方法,适用于构建读... 目录一、什么是mysql多实例二、二进制方式安装MySQL1.获取二进制代码包2.安装基础依赖3.清