分類
linux

一條網路線連接兩台電腦分享網路(win10/Ubuntu18.04)


使用情境:手邊沒有路由器或橋接器,網路來源是手機網路且只有一台電腦有無線網卡可接收wifi,另一台則只有有線網路孔(很可憐的情境…)
實際上硬體配置如下圖一隻手機開熱點分享網路,主電腦接收wifi再透過網路線分享網路給客電腦。



軟體設定主要都在主電腦完成,客電腦只要開啟網路設定也不管是哪個作業系統(至少win10Ubuntu是哈)就會自動設定ip獲得網路了。
首先是主電腦作業系統是win10的設定
開啟控制台>網路和網際網路>網路和共用中心
點擊wifi


開啟 內容 > 共用
勾選 允許其他網路使用者透過網路連線連線網路




理論上這樣網路分享設定就完成了,接著可以用指令查詢兩台電腦的網卡的ip確認。 
主電腦是win10開啟命令提示字元 win10+R 輸入cmd開啟
輸入ipconfig

乙太網路卡 乙太網路:
   連線特定 DNS 尾碼 . . . . . . . . :
   連結本機 IPv6 位址. . . . . . . : fe80::29a9:40b:8afd:c22%18
   IPv4 位址 . . . . . . . . . . . . : 192.168.137.1
   子網路遮罩 . . . . . . . . . . . .: 255.255.255.0
   預設閘道 . . . . . . . . . . . . .:

無線區域網路介面卡 區域連線* 1:

   媒體狀態 . . . . . . . . . . . . .: 媒體已中斷連線
   連線特定 DNS 尾碼 . . . . . . . . :

無線區域網路介面卡 區域連線* 10:

   媒體狀態 . . . . . . . . . . . . .: 媒體已中斷連線
   連線特定 DNS 尾碼 . . . . . . . . :

無線區域網路介面卡 Wi-Fi:

   連線特定 DNS 尾碼 . . . . . . . . :
   IPv6 位址. . . . . . . . . . . . .: 2402:7500:567:7e71:a599:1a0e:acd8:4dd0
   臨時 IPv6 位址. . . . . . . . . . : 2402:7500:567:7e71:15a8:9c66:52a:73a7
   連結本機 IPv6 位址. . . . . . . : fe80::a599:1a0e:acd8:4dd0%12
   IPv4 位址 . . . . . . . . . . . . : 192.168.43.73
   子網路遮罩 . . . . . . . . . . . .: 255.255.255.0
   預設閘道 . . . . . . . . . . . . .: fe80::2efd:a1ff:fea8:bb51%12
                                       192.168.43.11

乙太網路卡 藍牙網路連線:

   媒體狀態 . . . . . . . . . . . . .: 媒體已中斷連線
   連線特定 DNS 尾碼 . . . . . . . . :
我的客電腦作業系統是Ubuntu
在Terminal輸入ipconfig客電腦的有線網卡被分配一個ip
enp2s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500 
        inet 192.168.137.161  netmask 255.255.255.0  broadcast 192.168.137.255 
        inet6 fe80::cb36:f80:81e2:4850  prefixlen 64  scopeid 0x20<link> 
        ether 00:1f:c6:b9:c8:6f  txqueuelen 1000  (Ethernet) 
        RX packets 21474  bytes 12316961 (12.3 MB) 
        RX errors 0  dropped 0  overruns 0  frame 0 
        TX packets 17967  bytes 11523956 (11.5 MB) 
        TX errors 0  dropped 0 overruns 0  carrier 4  collisions 0 
  
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 6749  bytes 730338 (730.3 KB) 
        RX errors 0  dropped 0  overruns 0  frame 0 
        TX packets 6749  bytes 730338 (730.3 KB) 
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0 可以發現兩台電腦在同個網域192.168.137.XXX
但這裡有個問題,每次主電腦的win10重開機後設定都會消失即使”
允許其他網路使用者透過網路連線連線網路”是有勾選的,需要先取消勾選然後在勾選一次(這問題害我反覆花了很多時間…)。

主電腦作業系統是Ubuntu
Ubuntu的設定我失敗好多次,試了一些方法都失敗,所以我要先介紹我失敗的過程哼哼。
win10經驗來看主電腦的有線網卡ip的前三區段都一樣,最後一個才不一樣
所以原本想說就手動設定兩台電腦的ip
然後測試在主電腦終端機輸入指令
ping “客電腦的ip”
客電腦輸入
ping “主電腦ip”
結果兩台電腦成功接收到彼此的封包,但無法連接上網路
再來參考論壇的連接兩台電腦網路的作法
主客兩台電腦都在有線網路設定中IPv4都選擇只有本機連線
結果就跟手動指定效果類似,但連線狀態會是成功的
只是依然沒有網路
(很快抱怨完了…)

最後發現在ubuntu18.04以前的版本網路設定選項是有分享到其他電腦
youtube: How To Share Your WiFi Connection Over Ethernet in Ubuntu Linux
但在圖形界面中後來被隱藏起來了,但還是可以叫出來
方法為
在主電腦按alt + F2
輸入指令: nm-connection-editor
可以叫出進階版的網路設定
在有線網路中IPv4方法設定為分享給其他電腦

客電腦則保持自動(DHCP)就好
*題外話如果是將wifi的方法改分享給其他電腦的話就是以電腦開啟熱點
參考資料:

發表迴響