็†ฑ้–€ๅˆ†้กž
 ่ผ‰ๅ…ฅไธญ…
็›ฎ้Œ„

๐Ÿง Linux ้€ฒ้šŽ็ถฒ่ทฏ่จญๅฎšๅคงๅ…จ:Bonding、VLAN、Bridge、้œๆ…‹่ทฏ็”ฑ、Multi-NIC ๆžถๆง‹ๅฎŒๆ•ด่งฃๆž

    ๐Ÿง Linux ้€ฒ้šŽ็ถฒ่ทฏ่จญๅฎšๅคงๅ…จ:Bonding、VLAN、Bridge、้œๆ…‹่ทฏ็”ฑ、Multi-NIC ๆžถๆง‹ๅฎŒๆ•ด่งฃๆž

    ๅœจไผๆฅญ็ถฒ่ทฏ、่ณ‡ๆ–™ไธญๅฟƒ、่™›ๆ“ฌๅŒ–ๅนณๅฐ(Proxmox、VMware、KVM)、ๅฎนๅ™จๅนณๅฐ(Kubernetes)ไธญ, Linux ๆ‰ฎๆผ”่‘—้—œ้ต็š„ๅŸบ็คŽ่ง’่‰ฒ,่€Œ็ถฒ่ทฏ่จญๅฎšๆ›ดๆ˜ฏๆ•ดๅ€‹็ณป็ตฑไธญไธๅฏๆˆ–็ผบ็š„ๆ ธๅฟƒ็ต„ไปถ。

    ๆœฌ็ฏ‡ไปฅ็™พ็ง‘ๆ–นๅผ、็ณป็ตฑๅŒ–ๆ•ด็† Linux ้€ฒ้šŽ็ถฒ่ทฏ่จญๅฎš,ๅŒ…ๆ‹ฌ: Bonding(็ถฒๅก่šๅˆ)、VLAN(่™›ๆ“ฌๅ€ๅŸŸ็ถฒ่ทฏ)、Bridge(็ถฒๆฉ‹)、้œๆ…‹่ทฏ็”ฑ、Multi-NIC ๆžถๆง‹่จญ่จˆ。 ๆฏๅ€‹็ซ ็ฏ€็š†้™„่จญๅฎšๆช”็คบไพ‹、ไฝฟ็”จๆƒ…ๅขƒไปฅๅŠๆŒ‡ไปคๆ“ไฝœ,้ฉๅˆ็ณป็ตฑๅทฅ็จ‹ๅธซ、็ถฒ่ทฏๅทฅ็จ‹ๅธซ、่™›ๆ“ฌๅŒ–ๆžถๆง‹ๅธซๅƒ่€ƒไฝฟ็”จ。


    ๐Ÿ“Œ 1. Bonding(็ถฒๅก่šๅˆ)— Link Aggregation / NIC Teaming

    Bonding ๆ˜ฏๅฐ‡ๅ…ฉๅผตๆˆ–ๅคšๅผตๅฏฆ้ซ”็ถฒๅกๆ•ดๅˆๆˆไธ€ๅผต้‚่ผฏไป‹้ข,ๆๅ‡:

    • ๐Ÿš€ ๅธถๅฏฌ(Link Aggregation)
    • ๐Ÿ›ก️ ้ซ˜ๅฏ็”จๆ€ง(ๆ•…้šœ่‡ชๅ‹•ๅˆ‡ๆ›)

    ๅธธ่ฆ‹ๆจกๅผ(mode)ๅŠ็”จ้€”ๅฆ‚ไธ‹:

    ๆจกๅผ็”จ้€”็‰น่‰ฒ
    mode=1 (active-backup) ้ซ˜ๅฏ็”จๆ€ง ๅƒ…ไธ€ๆข้ˆ่ทฏๅทฅไฝœ、็„ก้œ€ไบคๆ›ๅ™จๆ”ฏๆด
    mode=2 (balance-xor) ็ฐกๅ–ฎ่ฒ ่ผ‰ๅˆ†ๆ“” ้œ€ไบคๆ›ๅ™จๆ”ฏๆด、Hash ๅˆ†้…
    mode=4 (802.3ad) ไผๆฅญๆœ€ๅธธ็”จ LACP ้œ€ไบคๆ›ๅ™จๆ”ฏๆด LACP、ๆ•ˆ่ƒฝๆœ€ไฝณ
    mode=5/6 ้ฉ็”จๅฐ‘่ฆ‹็’ฐๅขƒ ๅคš็‚บ่ผƒ่ˆŠ็’ฐๅขƒไฝฟ็”จ

    ๐ŸŸฆ Bonding ่จญๅฎš็ฏ„ไพ‹(ifcfg)— LACP ๆจกๅผ

    bond0 ่จญๅฎš:

    DEVICE=bond0
    TYPE=Bond
    BONDING_MASTER=yes
    IPADDR=192.168.10.20
    PREFIX=24
    GATEWAY=192.168.10.1
    BONDING_OPTS="mode=4 miimon=100 lacp_rate=1"
    ONBOOT=yes
    

    ๅฏฆ้ซ” NIC ๅŠ ๅ…ฅ Bonding:

    DEVICE=ens160
    MASTER=bond0
    SLAVE=yes
    ONBOOT=yes
    

    ๅฎŒๆˆๅพŒ้‡ๆ–ฐๅ•Ÿๅ‹• NetworkManager ๆˆ–ไป‹้ข。 Bonding ๆ˜ฏ่™›ๆ“ฌๅŒ–ๅนณๅฐๅธธ็”จๆŠ€่ก“,ๅฏ้ฟๅ…ๅ–ฎ NIC ๆ•…้šœ้€ ๆˆๆ•ดๅ€‹็ฏ€้ปž้›ข็ทš。


    ๐Ÿ“Œ 2. VLAN(802.1Q Tagging)— ่™›ๆ“ฌๅ€ๅŸŸ็ถฒ่ทฏ

    VLAN ่ฎ“ๅ–ฎไธ€ๅฏฆ้ซ”ไป‹้ขๅฏๅŒๆ™‚ๅ‚ณ่ผธๅคšๅ€‹็ถฒๆฎต,้ฉ็”จๆ–ผ:

    • ๐Ÿ“ฆ Proxmox / KVM VM ็ถฒ่ทฏ้š”้›ข
    • ๐Ÿ“ก ๅคงๅž‹ไผๆฅญๅคš็ถฒๆฎต็’ฐๅขƒ
    • ๐Ÿ›ก️ ๅฎ‰ๅ…จๆ€งๅ€ๅŸŸๅˆ†้š”(DMZ / LAN / ็ฎก็†็ถฒ)

    ๐ŸŸฆ VLAN ่จญๅฎšๆช”(ifcfg)็คบไพ‹

    DEVICE=ens160.50
    VLAN=yes
    BOOTPROTO=static
    IPADDR=192.168.50.10
    PREFIX=24
    ONBOOT=yes
    

    ๐ŸŸฆ ไฝฟ็”จ nmcli ๅปบ็ซ‹ VLAN

    nmcli con add type vlan con-name vlan50 dev ens160 id 50 ip4 192.168.50.10/24
    

    ไบคๆ›ๅ™จ้œ€่จญๅฎš Trunk / Tagged Port ๆ‰่ƒฝๆญฃๅธธ้‹ไฝœ。


    ๐Ÿ“Œ 3. Bridge(็ถฒๆฉ‹)— Linux Bridge

    Linux Bridge ๆ˜ฏ่™›ๆ“ฌๅŒ–็’ฐๅขƒ็š„ๆจ™ๆบ–็ถฒ่ทฏๆžถๆง‹,ๅฏ่ฎ“่™›ๆ“ฌๆฉŸ็›ดๆŽฅๅŠ ๅ…ฅ L2 ็ถฒ่ทฏ。

    • Proxmox:vmbr0
    • KVM / Libvirt:virbr0

    ๐ŸŸฆ Bridge ่จญๅฎšๆช”(ifcfg)็คบไพ‹

    bridge:

    DEVICE=br0
    TYPE=Bridge
    IPADDR=192.168.1.20
    PREFIX=24
    GATEWAY=192.168.1.1
    ONBOOT=yes
    

    ๅฏฆ้ซ” NIC:

    DEVICE=ens160
    BRIDGE=br0
    ONBOOT=yes
    

    Bridge ็ญ‰ๅŒๆ–ผ่ปŸ้ซ”ไบคๆ›ๅ™จ(Software Switch),ๆ˜ฏๅฎนๅ™จ่ˆ‡ VM ็ถฒ่ทฏ็š„ๅŸบ็คŽ。


    ๐Ÿ“Œ 4. ้œๆ…‹่ทฏ็”ฑ(Static Routing)

    ้œๆ…‹่ทฏ็”ฑ็”จๆ–ผๆ‰‹ๅ‹•ๆŒ‡ๅฎšๆต้‡่ตฐๅ‘,ไพ‹ๅฆ‚่ทจ็ถฒๆฎต、้š”้›ข็’ฐๅขƒ、VPN ็ญ‰็”จ้€”。

    ๐ŸŸฆ ่‡จๆ™‚้œๆ…‹่ทฏ็”ฑ(็ซ‹ๅณ็”Ÿๆ•ˆ)

    ip route add 10.20.0.0/16 via 192.168.1.1
    

    ๐ŸŸฆ ๆฐธไน…้œๆ…‹่ทฏ็”ฑ(ifcfg-route)

    ๅปบ็ซ‹ๆช”ๆกˆ:

    /etc/sysconfig/network-scripts/route-ens160
    

    ๅ…งๅฎน:

    10.20.0.0/16 via 192.168.1.1 dev ens160
    

    ๐Ÿ“Œ 5. Multi-NIC ๆžถๆง‹่จญ่จˆ(ๅคš็ถฒๅก็’ฐๅขƒ)

    ๅคš็ถฒๅก็’ฐๅขƒๅธธ่ฆ‹ๆ–ผ:

    • ๐Ÿ“ก ็ฎก็†็ถฒ / ๆœๅ‹™็ถฒ / Storage ็ถฒๅˆ†้›ข
    • ☁️ ่™›ๆ“ฌๅŒ–ๅนณๅฐ(Proxmox / ESXi)
    • ๐Ÿงฑ ไผๆฅญ่ณ‡ๆ–™ไธญๅฟƒ็ถฒ่ทฏๅˆ†ๅฑค

    ๐ŸŸฆ ่‹ฅ่ฆ็‚บไธๅŒ NIC ่จญๅฎšไธๅŒ Gateway(้€ฒ้šŽ)

    Linux ไธๅ…่จฑ「ๅคšๅ€‹้ ่จญ Gateway」ๅŒๆ™‚ๅญ˜ๅœจ,ไฝ†ๅฏไฝฟ็”จๆ”ฟ็ญ–่ทฏ็”ฑ(Policy Routing)。

    ๆŸฅ่ฉข table:

    ip rule

    ๅŠ ๅ…ฅๆ”ฟ็ญ–่ทฏ็”ฑ:

    ip rule add from 192.168.20.0/24 table 20
    ip route add default via 192.168.20.1 table 20
    

    ้ฉ็”จๆ–ผ Storage ็ถฒ่ˆ‡็ฎก็†็ถฒ้œ€่ฆ่ตฐไธๅŒ่ทฏๅพ‘็š„ๆƒ…ๅขƒ。


    ๐Ÿ“Œ 6. ้€ฒ้šŽ็ถฒ่ทฏๆžถๆง‹็ถœๅˆ็คบไพ‹(ไผๆฅญๅธธ่ฆ‹ๆžถๆง‹)

    ไปฅไธ‹็‚บไผๆฅญๅธธ่ฆ‹ไธ‰ๅฑค็ถฒ่ทฏ็คบ็ฏ„:

    • Bonding(LACP)ๆไพ›้ซ˜ๅฏ็”จๆ€ง
    • ๅœจ Bond ไธŠๅปบ็ซ‹ๅคš็ต„ VLAN
    • Bridge ๆไพ›่™›ๆ“ฌๆฉŸ L2 ็ถฒ่ทฏ
    • Routing ๆฑบๅฎš่ทจ็ถฒๆฎต่ตฐๅ‘
    
    bond0 (mode=4)
     ├── bond0.10  → VLAN 10(Management)
     ├── bond0.20  → VLAN 20(VM Network)
     └── bond0.30  → VLAN 30(Storage)
    
    vmbr0 → bond0.20(ๆไพ› VM L2 ็ถฒ่ทฏ)
    storage0 → bond0.30(่ตฐ็จ็ซ‹ Storage)
    

    ๆญคๆžถๆง‹ๆ˜ฏ Proxmox、OpenStack、KVM ่ณ‡ๆ–™ไธญๅฟƒๅ ดๆ™ฏๆœ€ๅธธ่ฆ‹็š„ๅ…ธๅž‹่จญ่จˆ。


    ๐Ÿ“Œ 7. ๅธธ่ฆ‹ๅ•้กŒ(Troubleshooting)

    ❗ Bridge ๆฒ’ๆœ‰ IP?

    ้œ€็ขบ่ชๆ˜ฏๅฆ็”ฑ Bridge ไป‹้ข(br0)ๅ–ๅพ— IP,่€Œ้žๅฏฆ้ซ” NIC。

    ❗ VLAN ping ไธ้€š?

    • ไบคๆ›ๅ™จ port ๆœช่จญๅฎš Trunk / Tagged
    • Bonding mode ่ˆ‡ไบคๆ›ๅ™จไธไธ€่‡ด(็‰นๅˆฅๆ˜ฏ LACP)

    ❗ Bonding mode 4 ็„กๆณ•ๅ•Ÿๅ‹•?

    ไบคๆ›ๅ™จ้œ€ๅ•Ÿ็”จ LACP(802.3ad)。

    ❗ Multi-NIC ๆต้‡่ท‘้Œฏ่ทฏ?

    ้œ€่จญๅฎšๆ”ฟ็ญ–่ทฏ็”ฑ(Policy Routing)。


    ๐Ÿ“š ๅปถไผธ้–ฑ่ฎ€

    ๐Ÿ”— ๅˆ†ไบซ้€™็ฏ‡ LINE Facebook X

    ๆฒ’ๆœ‰็•™่จ€:

    ๅผต่ฒผ็•™่จ€

    ๅญ—็ดš