看板 Linux 關於我們 聯絡資訊
最近剛好也在弄Archlinux上面連線種花PPPoE的事情,就順便紀錄一下好了 嗯雖然基本上就是照抄Archlinux Wiki… https://wiki.archlinux.org/index.php/Ppp 事前準備: 能動的種花浮動ip "By the way I use Arch"通行證 systemd 1. 安裝ppp這個package,按照ppp的Archlinux Wiki 在/etc/ppp/peers底下寫自己需要的連線設定檔 個人額外設定了lcp-echo-interval、lcp-echo-failure、以及holdoff等判斷 斷線與否/重連方式等的設定 以下討論假定設定檔為/etc/ppp/peers/dsl_provider 2. 同樣依照ppp的Arch Wiki頁面指示,在/etc/ppp/chap-secrets寫入PPPoE連線資訊 因為種花是種花,所以可能pap-secrets也要寫 個人是沒有後者就連不上,猜測是種花目前還是採pap方式認證的緣故 3. pppd call dsl_provider嘗試連線 如果ip link指令有ppp0之類的新介面出現的話代表應該已經連線成功 若否則可以照Wiki指示,用journalctl查看錯誤原因 而若已經有了新的ppp0之類字眼的介面 但是ip仍然不是種花的固定ip時 可以確認ip route看看目前的routing是否有把該介面當作預設 而dsl_provider裡加入defaultroute 則可以在pppd call dsl_provider建立PPPoE連線時 自動將該PPPoE虛擬介面作為預設routing 4. 如果需要開機自動連線,建立/etc/ppp/peers/dsl資料夾 在該資料夾下建立一個provider軟連結,連到/etc/ppp/peers/dsl_provider 而後systemctl enable ppp@dsl_provider啟用daemon 這樣重開機後應該會自動連上 5. poff -a可以關掉目前所有PPPoE連線 沒什麼大問題的話,至此應該有了可以動、可以關掉的種花PPPoE固定IP連線了。 接下來談幾個可能會出現的問題 1. ip route裡ppp0前面有default字樣 但是IP仍然不是種花給的IP 並且ip route給出來的資料不只有一行有前綴default linux下routing是看定義的先後順序以及metric值(0~100,default=0)決定的 metric小則優先,metric同則先定義者優先 因此若原本的浮動IP連線之類就已經有一個default卡著的話 需要用ip route del default之類的刪掉之,而後視需求重新加回 如果是其他發行版的話,ppp可能會有額外的模組 可以直接在dsl_provider設定檔內加入replacedefaultroute選項 如此在PPPoE連線成功後,daemon會幫你踢掉原本的default連線。 可惜Archlinux的ppp沒有編入這個選項的支援,因此需要使用其他腳本解決 同樣按照wiki指示,建立/etc/ppp/ip-pre-up、/etc/ppp/ip-pre-up.d/ 其下放腳本處理之 2. networkmanager的nmcli看不到這個PPPoE連線 個人只玩過單用ppp完成PPPoE,這部份我也不清楚怎麼弄出來 要看樓上那篇之類的@@ 總之ip指令確定是相容的 3. defaultroute沒有metric設定選項,預設的0有些過強 這部份我是弄了個腳本解決丟到/etc/ip-up.d/解決 因為平常還會用到VPN的關係,而該vpn工具預設的metric在50 而我希望連上VPN後VPN的優先權大於種花固定IP 所以才有了腳本裡60這個數字 大致上是在PPPoE連線建立後刪掉所有default route 然後把個人會用到的vpn以及PPPoE加回來 腳本: https://github.com/LIParadise/Archlinux-PPPoE-config 你說我的bash怎麼那麼醜? https://i.imgur.com/2lADnNX.jpg
-- ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1599848259.A.C8C.html
brli7848: rp-pppoe覺得被忽略 09/12 02:33
brli7848: 人家還幫你寫好adsl.service跟updown script 09/12 02:34
白忙了XD 原來這是這樣用的 ※ 編輯: a58524andy (140.112.151.226 臺灣), 09/12/2020 02:43:05
guezt: 我也好奇怎麼沒人提rp-pppoe 已經被遺忘了嗎? 09/12 08:40
kenduest: centos8 記得移除 rp-pppoe 套件了.. 09/12 19:05
Bellkna: arch只要裝這個rp-pppoe就好啊XD 之後再無腦pppoe-setup 09/12 19:47
Bellkna: 不過systemd-networkd也可以直接連線的樣子(沒試過 09/12 19:49
brli7848: 沒,networkd好像沒打算支援? 09/12 21:03
Bellkna: 範例檔好像有相關設定 可是rp-pppoe能動就懶得再試了 09/13 00:42