한 인터페이스에서 다른 인터페이스로 IPv4 트래픽을 라우팅하는 방법

한 인터페이스에서 다른 인터페이스로 IPv4 트래픽을 라우팅하는 방법

저는 이더넷 링크를 통해 Pi를 집에 있는 컴퓨터에 연결합니다. 내 컴퓨터는 무선 연결을 통해 인터넷에 연결되어 있습니다. 내 Pi의 모든 인터넷 트래픽을 내 컴퓨터를 통해 라우팅하고 싶습니다.

이더넷 링크에 /30 서브넷을 설정하고 두 서브넷에 경로를 추가하여 서로 핑할 수 있도록 했습니다.

이것이 내 구성입니다.

내 컴퓨터:

# IP addresses
eth0 192.168.1.1/30
wlan0 192.168.0.13/24


# IP routes
default via 192.168.0.254 dev wlan0  proto static  metric 600 
169.254.0.0/16 dev wlan0  scope link  metric 1000 
192.168.0.0/24 dev wlan0  proto kernel  scope link  src 192.168.0.13  metric 600 
192.168.1.0/30 dev eth0  scope link 

내 파이:

# IP address
eth0 192.168.1.2/30

# IP routes
default via 192.168.1.1 dev eth0
default via 192.168.1.1 dev eth0  proto static  metric 1024 
169.254.0.0/16 dev wlan0  scope link  metric 1000 
192.168.1.0/30 dev eth0  scope link 

내 컴퓨터에서 모든 트래픽을 eth0에서 wlan0으로 라우팅하려면 일부 경로만 추가해야 합니까? 아니면 NAT를 사용해야 합니까 iptables?

편집하다:

Henrik의 답변 이후 위장에 대해 검색해 본 결과 다음과 같은 사실을 발견했습니다.이 튜토리얼.

/proc/net이 기사에서 그는 디렉토리에서 2.2x 커널을 찾아 가짜 커널 지원이 활성화되어 있는지 확인하라고 말합니다.
내 4.2.x 커널에서는 그가 언급한 파일을 찾지 못했지만 *masquerade*.ko. 이는 내 커널에서 매스커레이딩이 지원된다는 의미입니까?
그렇지 않은 경우 커널을 다시 컴파일하지 않고 이를 설정할 수 있는 방법이 있습니까?

튜토리얼이 끝나면 그는 위장을 위한 몇 가지 방화벽 규칙을 제공합니다.
첫 번째는 다음과 같습니다

/sbin/ipchains -A input -j ACCEPT -i eth1 -s 0/0 67 -d 0/0 68 -p udp  

이는 DHCP 요청이 "숨겨진" 컴퓨터를 통과하도록 하기 위한 것입니다. 그런데 PI에서 IP를 수동으로 고쳐서 필요없게 됐죠?

따라서 두 가지 규칙이 있습니다.

/sbin/ipchains -P forward DENY
/sbin/ipchains -A forward -s 10.1.199.0/24 -j MASQ

왜 하나가 있나요 DENY?
내 서브넷의 경우

/sbin/ipchains -A forward -s 192.168.1.0/30 -j MASQ

옳은?

편집 2:
더 새로운 것을 찾았습니다지도 시간헨리크가 제안한 대로. 내가 추가한 파일
에서 :/etc/rc.local

iptables -t nat -A POSTROUTING -s 192.168.1.0/30 -o wlan0 -j MASQUERADE

이제 변장은 작동하는 것 같지만 완전히 작동하는 것은 아닙니다.
실제로 IP 주소(8.8.8.8)를 사용하여 google.com에 ping을 시도하면 제대로 작동하지만 URL을 사용하려고 하면 작동하지 않습니다.

DNS 문제 때문인 줄 알고 /etc/resolv.conf파일에 DNS IP를 추가했습니다. 그러나 그것은 아무것도 바꾸지 않습니다.
그래서 Firefox의 IP 주소를 사용하여 DuckDuckgo에 액세스하려고 시도했지만 성공하지 못했습니다.

ICMP 트래픽만 전달되는 것 같습니다. 나는 Wireshark를 사용하여 무엇이 오고 eht0무엇이 살아남는지 확인했습니다 wlan0.

답변1

전달을 켜고(아마도 기본적으로 켜져 있음) 매스커레이딩을 설정해야 합니다(특수 유형의 NAT에 대한 멋진 단어이지만 검색할 내용을 아는 데 도움이 될 수 있음).

관련 정보