女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Linux系統中網絡配置詳解

馬哥Linux運維 ? 來源:馬哥Linux運維 ? 2025-07-17 11:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

引言

網絡配置是Linux系統運維中的核心技能之一。正確理解和配置子網掩碼、網關等網絡參數,直接影響系統的網絡連通性和性能。本文將深入探討Linux系統中網絡配置的方方面面,為運維工程師提供全面的技術指導。

第一章:網絡基礎理論

1.1 IP地址與子網掩碼的關系

IP地址是網絡中設備的唯一標識,由32位二進制數組成,通常以點分十進制表示。子網掩碼用于確定IP地址的網絡部分和主機部分。

IP地址分類:

? A類:1.0.0.0 - 126.255.255.255,默認子網掩碼255.0.0.0

? B類:128.0.0.0 - 191.255.255.255,默認子網掩碼255.255.0.0

? C類:192.0.0.0 - 223.255.255.255,默認子網掩碼255.255.255.0

1.2 CIDR表示法

CIDR(Classless Inter-Domain Routing)使用斜杠后的數字表示網絡前綴長度:

? /24 等價于 255.255.255.0

? /16 等價于 255.255.0.0

? /8 等價于 255.0.0.0

1.3 網關的作用

網關是連接不同網絡的設備,通常是路由器。當數據包的目標不在本地網絡時,系統將數據包發送到默認網關進行轉發。

第二章:Linux網絡配置文件詳解

2.1 網絡配置文件結構

Linux系統中,網絡配置文件的位置和格式因發行版而異:

RedHat/CentOS系列:

/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network
/etc/resolv.conf

Debian/Ubuntu系列:

/etc/network/interfaces
/etc/netplan/(Ubuntu 18.04+)
/etc/resolv.conf

2.2 RedHat/CentOS網絡配置

網卡配置文件格式(/etc/sysconfig/network-scripts/ifcfg-eth0):

# 基本配置
DEVICE=eth0          # 網卡設備名
TYPE=Ethernet         # 連接類型
ONBOOT=yes          # 開機啟動
BOOTPROTO=static       # 靜態IP配置

# IP地址配置
IPADDR=192.168.1.100     # IP地址
NETMASK=255.255.255.0    # 子網掩碼
PREFIX=24          # 網絡前綴(可選,與NETMASK二選一)
GATEWAY=192.168.1.1     # 默認網關

# DNS配置
DNS1=8.8.8.8         # 首選DNS
DNS2=8.8.4.4         # 備用DNS

# 高級配置
HWADDR=005634:56   # MAC地址
USERCTL=no          # 普通用戶控制
NM_CONTROLLED=no       # NetworkManager控制
DEFROUTE=yes        # 默認路由

DHCP配置示例:

DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=dhcp
HWADDR=005634:56

2.3 Debian/Ubuntu網絡配置

傳統配置文件(/etc/network/interfaces):

# 回環接口
auto lo
iface lo inet loopback

# 靜態IP配置
auto eth0
iface eth0 inet static
  address 192.168.1.100
  netmask 255.255.255.0
  gateway 192.168.1.1
  dns-nameservers 8.8.8.8 8.8.4.4
  dns-search example.com

# DHCP配置
auto eth1
iface eth1 inet dhcp

# 多IP配置
auto eth0:0
iface eth0:0 inet static
  address 192.168.1.101
  netmask 255.255.255.0

Netplan配置(Ubuntu 18.04+):

network:
version:2
renderer:networkd
ethernets:
 eth0:
  addresses:
   -192.168.1.100/24
  gateway4:192.168.1.1
  nameservers:
   addresses:[8.8.8.8,8.8.4.4]
   search:[example.com]
  dhcp4:false

第三章:子網掩碼深入解析

3.1 子網掩碼的二進制表示

子網掩碼用二進制1表示網絡部分,用0表示主機部分:

IP地址:  192.168.1.100 = 11000000.10101000.00000001.01100100
子網掩碼: 255.255.255.0 = 11111111.11111111.11111111.00000000
網絡地址: 192.168.1.0  = 11000000.10101000.00000001.00000000
廣播地址: 192.168.1.255 = 11000000.10101000.00000001.11111111

3.2 子網劃分實例

將192.168.1.0/24網絡劃分為4個子網:

原網絡:192.168.1.0/24 (256個地址)
新掩碼:/26 (64個地址每個子網)

子網1:192.168.1.0/26  (192.168.1.1 - 192.168.1.62)
子網2:192.168.1.64/26 (192.168.1.65 - 192.168.1.126)
子網3:192.168.1.128/26 (192.168.1.129 - 192.168.1.190)
子網4:192.168.1.192/26 (192.168.1.193 - 192.168.1.254)

3.3 VLSM(可變長子網掩碼)

VLSM允許在同一個主網絡中使用不同長度的子網掩碼:

# 服務器網段(需要30個地址)
192.168.1.0/27  # 掩碼255.255.255.224

# 工作站網段(需要100個地址)
192.168.1.128/25 # 掩碼255.255.255.128

# 點對點鏈路(需要2個地址)
192.168.1.252/30 # 掩碼255.255.255.252

第四章:網關配置與路由管理

4.1 默認網關配置

臨時配置:

# 添加默認網關
route add default gw 192.168.1.1

# 或使用ip命令
ip route add default via 192.168.1.1

# 刪除默認網關
route del default gw 192.168.1.1
ip route del default via 192.168.1.1

永久配置:

# RedHat/CentOS
echo"GATEWAY=192.168.1.1">> /etc/sysconfig/network-scripts/ifcfg-eth0

# Debian/Ubuntu
echo"gateway 192.168.1.1">> /etc/network/interfaces

4.2 靜態路由配置

添加靜態路由:

# 訪問10.0.0.0/8網絡通過192.168.1.254網關
route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.1.254

# 使用ip命令
ip route add 10.0.0.0/8 via 192.168.1.254

# 指定出口接口
ip route add 10.0.0.0/8 via 192.168.1.254 dev eth0

永久靜態路由配置:

RedHat/CentOS創建路由文件:

# /etc/sysconfig/network-scripts/route-eth0
10.0.0.0/8 via 192.168.1.254
172.16.0.0/16 via 192.168.1.253

Debian/Ubuntu在interfaces文件中添加:

auto eth0
iface eth0 inet static
  address 192.168.1.100
  netmask 255.255.255.0
  gateway 192.168.1.1
  up route add -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.1.254
  down route del -net 10.0.0.0 netmask 255.0.0.0 gw 192.168.1.254

4.3 路由表管理

查看路由表:

# 傳統命令
route -n
netstat -rn

# 現代命令
ip route show
ip route show table main

路由表輸出解析:

Destination   Gateway     Genmask     Flags Metric Ref  Use Iface
0.0.0.0     192.168.1.1   0.0.0.0     UG  100  0    0 eth0
192.168.1.0   0.0.0.0     255.255.255.0  U   100  0    0 eth0

標志含義:

? U:路由有效

? G:通過網關

? H:目標是主機

? D:動態路由

? M:修改路由

第五章:網絡診斷與故障排除

5.1 網絡連通性測試

基本連通性測試:

# 測試本地網絡
ping 192.168.1.1

# 測試外網連通性
ping 8.8.8.8
ping www.google.com

# 測試特定端口
telnet 192.168.1.1 80
nc -zv 192.168.1.1 80

5.2 路由追蹤

# 追蹤數據包路徑
traceroute 8.8.8.8
tracepath 8.8.8.8

# 使用mtr進行持續監控
mtr 8.8.8.8

5.3 網絡配置檢查

檢查網絡接口狀態:

# 查看接口信息
ifconfig
ip addr show

# 查看接口統計
ip -slinkshow

# 檢查網絡服務狀態
systemctl status networking  # Debian/Ubuntu
systemctl status network    # RedHat/CentOS

5.4 常見故障排除

網絡無法連接故障排除流程:

1.檢查物理連接:

# 檢查網線連接狀態
ethtool eth0

2.檢查網絡配置:

# 驗證IP配置
ip addr show eth0

# 檢查路由表
ip route show

3.檢查DNS解析:

# 測試DNS解析
nslookup www.google.com
dig www.google.com

4.檢查防火墻:

# 查看防火墻狀態
iptables -L
systemctl status firewalld

第六章:高級網絡配置

6.1 網絡綁定(Bonding)

配置網絡綁定:

# 創建綁定接口配置
# /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
TYPE=Bond
BONDING_MASTER=yes
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
BONDING_OPTS="mode=1 miimon=100"

# 配置從屬接口
# /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes

6.2 VLAN配置

配置VLAN接口:

# 創建VLAN接口
# /etc/sysconfig/network-scripts/ifcfg-eth0.100
DEVICE=eth0.100
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.100.10
NETMASK=255.255.255.0
VLAN=yes

6.3 橋接配置

配置網絡橋接:

# 創建橋接接口
# /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
TYPE=Bridge
BOOTPROTO=static
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ONBOOT=yes
DELAY=0

# 配置橋接成員
# /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
BOOTPROTO=none
ONBOOT=yes
BRIDGE=br0

第七章:網絡安全配置

7.1 防火墻配置

iptables基本配置:

# 允許本地回環
iptables -A INPUT -i lo -j ACCEPT

# 允許已建立的連接
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

# 允許SSH
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

# 允許HTTP和HTTPS
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

# 默認拒絕
iptables -P INPUT DROP

7.2 網絡訪問控制

使用TCP Wrappers:

# /etc/hosts.allow
sshd: 192.168.1.0/24
httpd: ALL

# /etc/hosts.deny
ALL: ALL

第八章:性能優化與監控

8.1 網絡性能調優

內核參數優化:

# /etc/sysctl.conf
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 65536 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
net.ipv4.tcp_congestion_control = bbr
net.core.netdev_max_backlog = 5000

8.2 網絡監控

實時監控網絡流量:

# 使用iftop監控
iftop -i eth0

# 使用nethogs監控進程流量
nethogs eth0

# 使用ss查看連接狀態
ss -tuln

第九章:自動化網絡配置

9.1 腳本化網絡配置

網絡配置腳本示例:

#!/bin/bash
# network-config.sh

INTERFACE="eth0"
IP_ADDRESS="192.168.1.100"
NETMASK="255.255.255.0"
GATEWAY="192.168.1.1"
DNS1="8.8.8.8"
DNS2="8.8.4.4"

# 檢查系統類型
if[ -f /etc/redhat-release ];then
 # RedHat/CentOS配置
 cat> /etc/sysconfig/network-scripts/ifcfg-$INTERFACE< /etc/network/interfaces <

9.2 Ansible網絡配置

Ansible playbook示例:

---
-name:Configurenetworkinterface
hosts:servers
become:yes
vars:
 interface:eth0
 ip_address:192.168.1.100
 netmask:255.255.255.0
 gateway:192.168.1.1
 
tasks:
 -name:Configurenetworkinterface(RedHat/CentOS)
  template:
   src:ifcfg-interface.j2
   dest:"/etc/sysconfig/network-scripts/ifcfg-{{ interface }}"
  when:ansible_os_family=="RedHat"
  notify:restartnetwork
  
 -name:Configurenetworkinterface(Debian/Ubuntu)
  template:
   src:interfaces.j2
   dest:/etc/network/interfaces
  when:ansible_os_family=="Debian"
  notify:restartnetworking
  
handlers:
 -name:restartnetwork
  service:
   name:network
   state:restarted
   
 -name:restartnetworking
  service:
   name:networking
   state:restarted

第十章:云環境網絡配置

10.1 AWS網絡配置

AWS實例網絡配置:

# 配置彈性IP
aws ec2 associate-address --instance-id i-1234567890abcdef0 --public-ip 203.0.113.12

# 配置安全組
aws ec2 authorize-security-group-ingress 
  --group-id sg-12345678 
  --protocol tcp 
  --port 80 
  --cidr 0.0.0.0/0

10.2 Docker網絡配置

Docker容器網絡:

# 創建自定義網絡
docker network create --driver bridge 
  --subnet=192.168.100.0/24 
  --gateway=192.168.100.1 
  mynetwork

# 啟動容器并指定網絡
docker run -d --name web 
  --network mynetwork 
  --ip 192.168.100.10 
  nginx

結語

Linux網絡配置是運維工程師必須掌握的核心技能。通過深入理解子網掩碼、網關的工作原理和配置方法,結合實際的故障排除經驗,能夠確保網絡的穩定性和高效性。隨著云計算和容器技術的發展,網絡配置的復雜性不斷增加,運維工程師需要持續學習和實踐,才能應對各種網絡挑戰。

本文涵蓋了從基礎理論到高級配置的全面內容,希望能夠為運維工程師提供有價值的參考。在實際工作中,建議結合具體的網絡環境和業務需求,靈活運用這些知識和技能。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11511

    瀏覽量

    213777
  • 網絡
    +關注

    關注

    14

    文章

    7815

    瀏覽量

    90949
  • ip地址
    +關注

    關注

    0

    文章

    307

    瀏覽量

    18408

原文標題:Linux網絡總是不通?一文搞懂子網掩碼、網關配置的所有坑

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Linux LED子系統詳解

    Linux LED子系統詳解
    的頭像 發表于 06-10 10:37 ?1887次閱讀
    <b class='flag-5'>Linux</b> LED子<b class='flag-5'>系統</b><b class='flag-5'>詳解</b>

    LInux系統網絡配置過程

    Internet Protocol Address 網絡進程地址 ipv4 internet protocol version 4 互聯網協議的第四版。目前的全球因特網所采用的協議族是TCP/IP協議族。IP是TCP/IP協議族中網絡層的協議,是TCP/IP協議族的核心協
    發表于 07-12 07:49

    LAN在測試系統中網絡配置

    系統開發者指南:LAN在測試系統中的使用:網絡配置
    發表于 09-16 10:05

    Altium PCB設計中網絡字體的大小怎么調節

    系統參數進行設置,有利于高效的執行各項命令,加快設計的進程。例如在AD PCB設計中網絡字體的大小怎么調節的,是很多學員會經常問到的,接下來我們以AD19來講一下操作教程。(圖文詳解見附件)
    發表于 11-14 10:55

    linux系統與uboot中網卡驅動的典型工作方式有哪幾種

    linux系統中網卡驅動的典型工作方式有哪幾種?uboot中網卡驅動的工作方式有哪幾種?
    發表于 12-24 07:52

    Linux系統中網絡I/O性能改進方法的研究

    選擇并設計高效的網絡I/O模型是改善服務器性能的關鍵。該文通過對Linux系統中幾種網絡I/O模型的分析和研究,提出3種改善網絡I/O性能的
    發表于 04-09 09:41 ?28次下載

    實用的Linux網絡配置工具netconf

    實用的Linux網絡配置工具netconf 很多用戶不使用Linux網絡的原因是配置的復雜性與
    發表于 01-29 11:24 ?953次閱讀

    linux-socket網絡編程詳解

    linux開發編程教程資料——linux-socket網絡編程詳解,感興趣的小伙伴們可以看一看。
    發表于 08-23 16:23 ?0次下載

    Linux網絡編程實例詳解

    網絡通訊教程學習之Linux網絡編程實例詳解
    發表于 09-01 14:55 ?0次下載

    linux下網卡配置詳解

    linux下網卡配置詳解
    發表于 12-15 22:38 ?0次下載

    Linux內核配置系統詳解

    ,都將面臨著同樣的問題,即如何將源代碼融入到 Linux 內核中,增加相應的 Linux 配置選項,并最終被編譯進 Linux 內核。這就需要了解
    發表于 11-01 15:45 ?4次下載

    linux網絡服務器配置基礎

    要建立一個安全linux服務器就首先要了解Linux環境下和網絡服務相關的配置文件的含義及如何進行安全的配置。在
    發表于 11-07 15:21 ?0次下載

    如何驗證Linux系統中網絡端口通不通

    我們在 linux 系統網絡調試中經常會遇到需要測試驗證對應的端口是否正常的場景, 接下來講解一下常用的方法。
    的頭像 發表于 05-12 10:28 ?2565次閱讀
    如何驗證<b class='flag-5'>Linux</b><b class='flag-5'>系統</b><b class='flag-5'>中網絡</b>端口通不通

    linux配置網卡的ip及相關網絡參數

    Linux系統中,配置網絡參數包括配置網卡的IP地址、子網掩碼、網關、DNS等。本文將以詳盡、詳實、細致的方式介紹
    的頭像 發表于 11-17 10:55 ?3212次閱讀

    Linux網絡基本配置與管理

    Linux是一種開源操作系統,被廣泛用于服務器和網絡設備中。在Linux中,網絡配置和管理是一個
    的頭像 發表于 11-27 16:51 ?1460次閱讀