日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

CentOS实现双网卡网络共享

發布時間:2023/12/16 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 CentOS实现双网卡网络共享 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、雙網卡網絡共享

具體描述:服務器eth0連接外網,eth1連接筆記本,筆記本能夠上網。

操作步驟

  • 修改網卡信息
    • 外網
    vi /etc/sysconfig/network-scripts/ifcfg-eth0TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no NM_CONTROLLED=yes BOOTPROTO=static DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=no IPV6_AUTOCONF=no IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=eth0 UUID=38938e8a-79e4-4c01-8c2a-effdadcca483 DEVICE=eth0 ONBOOT=yes DNS1=8.8.8.8 IPADDR=192.168.0.145 NETMASK=255.255.255.0 GATEWAY=192.168.0.1 IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_PRIVACY=no ZONE= MTU=1492
    • 內網
    vi /etc/sysconfig/network-scripts/ifcfg-eth1TYPE=Ethernet PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=static IPADDR=192.168.100.100 NETMASK=255.255.255.0 NM_CONTROLLED=yes DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=yes IPV6INIT=no IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=eth1 UUID=0ce8bb17-3486-4ce0-a9ee-efa25eb8edc9 DEVICE=eth1 ONBOOT=yes DNS1=8.8.8.8
  • Linux系統啟用端口轉發(NAT)功能# 非永久修改 echo 1 > /proc/sys/net/ipv4/ip_forward # 永久修改 vi /etc/sysctl.conf net.ipv4.ip_forward=1 sysctl -p
  • 修改防火墻設置,將網卡eth1改成trusted區域:systemctl stop NetworkManager systemctl disable NetworkManager firewall-cmd --permanent --zone=public --remove-interface=eth1 firewall-cmd --permanent --zone=trusted --add-interface=eth1 firewall-cmd --reload systemctl restart firewalld
  • 配置 NAT 規則:將所有發送到192.168.100.*的數據包轉發到eth0(外網網卡)iptables -t nat -A POSTROUTING -s 192.168.100.0/255.255.255.0 -o eth0 -j MASQUERADE
  • 允許端口轉發,執行命令iptables -A FORWARD -i eth1 -j ACCEPT
  • 配置連接內網的主機ip信息ip:192.168.100.5 子網掩碼:255.255.255.0 網關:192.168.100.100(服務器eth1的ip) dns:8.8.8.8
  • shell腳本

  • share-eth.sh#!/bin/sh # use to share the two network card and make the eth0 linked public network, eth1 linked LAN. # And make the post data of eth1 would be sent to eth0.echo "# 修改網卡eth1" sed -i 's/IPADDR=.*/IPADDR=192.168.100.100/g' /etc/sysconfig/network-scripts/ifcfg-eth1 sed -i 's/ONBOOT=.*/ONBOOT=yes/g' /etc/sysconfig/network-scripts/ifcfg-eth1 sed -i 's/BOOTPROTO=.*/BOOTPROTO=static/g' /etc/sysconfig/network-scripts/ifcfg-eth1 service network restartecho "# 啟用端口轉發(NAT)功能" echo 1 > /proc/sys/net/ipv4/ip_forwardecho "# 修改防火墻設置,將網卡eth1改成trusted區域:" systemctl stop NetworkManager systemctl disable NetworkManager firewall-cmd --permanent --zone=public --remove-interface=eth1 firewall-cmd --permanent --zone=trusted --add-interface=eth1 firewall-cmd --reload systemctl restart firewalldecho "# 配置 NAT 規則:將所有發送到 eth1(192.168.100.100) 的數據包轉發到 eth0(外網網卡)" #ip=$(awk -F "=" '/^IPADDR/{print $2}' /etc/sysconfig/network-scripts/ifcfg-eth1) iptables -t nat -A POSTROUTING -s "192.168.100.100/255.255.255.0" -o eth0 -j MASQUERADEecho "# 允許端口轉發,執行命令" iptables -A FORWARD -i eth1 -j ACCEPT
  • trans.sh#!/bin/sh iptables -t nat -A POSTROUTING -s "192.168.100.100/255.255.255.0" -o eth0 -j MASQUERADE
  • 注意:執行shell腳本方式配置的話,執行完share-eth.sh之后還需再執行一次trans.sh

    當eth0和eth1處于同一個網段的時候會出現什么情況?

    這時連接的主機的ip也和它們處于同一網段,相互之間并不連通。

    怎么解決?

  • 服務器網卡信息:eth0 : 192.168.0.145 Gateway: 192.168.0.1 eth1 : 192.168.0.100 連接的主機:192.168.0.111 Gateway: 192.168.0.100
  • 解決方法:將連接的主機ip加入服務器的路由表route add -host 192.168.0.111 dev eth1
  • 總結

    以上是生活随笔為你收集整理的CentOS实现双网卡网络共享的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。