좋습니다. 조금 이상하게 들릴 수도 있지만 설명하겠습니다.
데스크탑이 2개 있는데 하나는 이더넷 포트가 고장났고 다른 하나는 작동합니다. 둘 다 아날로그 오디오 입/출력이 있고 Linux를 실행하며 미니 모뎀이 설치되어 있고 약 750보드에서 안정적으로 데이터를 주고받을 수 있습니다(그러나 오류 수정은 매우 도움이 될 것입니다). 두 데스크톱은 시뮬레이션된 스테레오를 통해 동시에 데이터를 교환할 수 있으므로(수신이 완료될 때까지 기다리지 않고 전송),~해야 한다손상된 이더넷 포트가 있는 데스크탑을 인터넷에 연결할 수 있습니까? 그렇다면 어떻게 해야 합니까? 다른 소프트웨어(예: 사운드 모뎀)나 다른 응용 프로그램을 사용해야 합니까?
편집: 아래 답변(1200보드, 평균 패킷 손실 <1%)으로 작동했지만피어 투 피어대신 연결해 보세요인터넷연결하다. ip
인터넷에 연결할 수 있도록 회선을 어떻게 수정합니까 ?
미리 감사드립니다!
답변1
SLIP을 사용하면 이 작업을 수행할 수 있습니다. 누군가가 수행한 프로젝트 로그 보기:https://xenoworld.de/knowledge/slip.html
답변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