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

相关文章

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

C#使用StackExchange.Redis实现分布式锁的两种方式介绍

《C#使用StackExchange.Redis实现分布式锁的两种方式介绍》分布式锁在集群的架构中发挥着重要的作用,:本文主要介绍C#使用StackExchange.Redis实现分布式锁的... 目录自定义分布式锁获取锁释放锁自动续期StackExchange.Redis分布式锁获取锁释放锁自动续期分布式

IntelliJ IDEA 中配置 Spring MVC 环境的详细步骤及问题解决

《IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决》:本文主要介绍IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决,本文分步骤结合实例给大... 目录步骤 1:创建 Maven Web 项目步骤 2:添加 Spring MVC 依赖1、保存后执行2、将新的依赖

快速修复一个Panic的Linux内核的技巧

《快速修复一个Panic的Linux内核的技巧》Linux系统中运行了不当的mkinitcpio操作导致内核文件不能正常工作,重启的时候,内核启动中止于Panic状态,该怎么解决这个问题呢?下面我们就... 感谢China编程(www.chinasem.cn)网友 鸢一雨音 的投稿写这篇文章是有原因的。为了配置完

Java对象转换的实现方式汇总

《Java对象转换的实现方式汇总》:本文主要介绍Java对象转换的多种实现方式,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Java对象转换的多种实现方式1. 手动映射(Manual Mapping)2. Builder模式3. 工具类辅助映

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

Spring Boot读取配置文件的五种方式小结

《SpringBoot读取配置文件的五种方式小结》SpringBoot提供了灵活多样的方式来读取配置文件,这篇文章为大家介绍了5种常见的读取方式,文中的示例代码简洁易懂,大家可以根据自己的需要进... 目录1. 配置文件位置与加载顺序2. 读取配置文件的方式汇总方式一:使用 @Value 注解读取配置方式二

如何为Yarn配置国内源的详细教程

《如何为Yarn配置国内源的详细教程》在使用Yarn进行项目开发时,由于网络原因,直接使用官方源可能会导致下载速度慢或连接失败,配置国内源可以显著提高包的下载速度和稳定性,本文将详细介绍如何为Yarn... 目录一、查询当前使用的镜像源二、设置国内源1. 设置为淘宝镜像源2. 设置为其他国内源三、还原为官方

JAVA保证HashMap线程安全的几种方式

《JAVA保证HashMap线程安全的几种方式》HashMap是线程不安全的,这意味着如果多个线程并发地访问和修改同一个HashMap实例,可能会导致数据不一致和其他线程安全问题,本文主要介绍了JAV... 目录1. 使用 Collections.synchronizedMap2. 使用 Concurren

CentOS7更改默认SSH端口与配置指南

《CentOS7更改默认SSH端口与配置指南》SSH是Linux服务器远程管理的核心工具,其默认监听端口为22,由于端口22众所周知,这也使得服务器容易受到自动化扫描和暴力破解攻击,本文将系统性地介绍... 目录引言为什么要更改 SSH 默认端口?步骤详解:如何更改 Centos 7 的 SSH 默认端口1