
いいですね。少し変に聞こえるかもしれませんが、説明します。
2台のデスクトップがあり、1つはイーサネットポートが故障し、もう1つは機能します。どちらもアナログオーディオ入出力があり、Linuxを実行し、ミニモデムがインストールされており、約750ボードで確実にデータを送受信できます(ただし、エラー修正は非常に役立ちます)。両方のデスクトップはシミュレートされたステレオを介して同時にデータを交換できます(受信が完了するのを待たずに送信)。しなければならない破損したイーサネットポートを持つデスクトップをインターネットに接続できますか?では、どうすればよいですか?他のソフトウェア(サウンドモデムなど)や他のアプリケーションを使用する必要がありますか?
編集:以下の回答(1200ボード、平均パケット損失<1%)で動作しましたが、ピアツーピア代わりに接続してみてくださいインターネットつながる。ip
インターネットに接続できるように回線をどのように変更しますか?
よろしくお願いします!
答え1
SLIPを使用すると、これを行うことができます。誰かが行ったプロジェクトログを見る:https://xenoworld.de/knowledge/slip.html
答え2
質問の2番目の部分では、SLIPが提供するように、デバイスがすでに認識して同意する「LAN側」にネットワークリンクがあると仮定し、LAN-WANルータを設定するのと本質的に同じです。確かに他の場所に詳細がありますが、IPv4の欠点は、インターネットアクセスを持つルーターにローカルアドレスがあり、トンネルのもう一方の端にあるクライアントにアドレスがあると仮定すると、次のように$ROUTER
なります$CLIENT
(すべてroot
または少なくとも別のものとして実行する必要がありますCAP_NET_ADMIN
)。
# On $ROUTER:
# ask the kernel to forward packets it receives that aren't destined
# for the local host:
echo 1 > /proc/sys/net/ipv4/ip_forward
# when forwarding packets from the client, rewrite the source addresses,
# since our network segment isn't globally visible:
iptables -t nat -A POSTROUTING -s $CLIENT/32 -j MASQUERADE
# (you might also set up some DNAT rules if you want to "port forward")
# On $CLIENT:
# be sure the router is always registered as a local route--it probably
# was when the interface was brought up, but just to be sure:
ip r add $ROUTER/32 dev $SLIPIF
# replace $SLIPIF with $CLIENT's name for the SLIP interface
# now tell the client that $ROUTER is happy to forward all other Internet
# traffic:
ip r add default via $ROUTER
この簡単な例では、共有アドレス空間は$CLIENT
必要ありませんが、$ROUTER
必要に応じて完全なLAN割り当てに簡単に拡張できる方法を確認できます。 BSDツールや最新のnetfilterインターフェースなど、わずかに異なるツールを使用してこのプロセスのバリエーションをさまざまな場所nftables
で見ることができますが、前述のアイデアは本質的に同じです。注意:最初に機能しない場合は、「管理」SLIPインターフェイスに他の項目(など)がないことを確認し、netfilterを積極的に使用するファイアウォール(たとえば)がないことを確認しsystemd-networkd
てください。構成に関する他のアイデア、これらのアイデアは実行中のアクションと競合する可能性があり、自動的にルートを削除したりパケットをドロップしたりする可能性があります。NetworkManager
ufw