"whois" 명령을 실행하고 쿼리에 대해 나가는 IP를 선택할 수 있습니까?
내 네트워크 인터페이스 "/etc/network/interfaces"에 SSL 포트용으로 여러 IP를 설치했지만 쿼리에도 사용할 수 있습니다.
IPv6도 같은 일을 할 수 있나요?
이제 NAT66으로 커널을 패치했지만 여전히 ipv6을 통해 쿼리를 설정하는 방법을 모르십니까?
매우 감사합니다!
답변1
처음에 이 질문을 오해해서 죄송합니다... iptables
SNAT를 사용하여 소스 주소를 SSL 주소로 변환해야 합니다. 동일한 역학을 시뮬레이션하기 위해 eth0에 다른 인터페이스 주소(172.16.61.5/29)를 추가했습니다...
172.16.61.5에서 IPv4 whois 쿼리 가져오기
이전(스니핑 쿼리 whois -h whois.arin.net <address>
):
[mpenning@Bucksnort ~]$ sudo tshark -i eth0 tcp and port 43
Running as user "root" and group "root". This could be dangerous.
Capturing on eth0
0.000000 172.16.61.6 -> 199.71.0.49 TCP 55089 > nicname [SYN] Seq=0 Win=5840 Len=0
내 소스 주소는 172.16.61.6입니다.
모든 TCP 트래픽의 소스 주소를 다음으로 설정합니다 tcp/43
.
# Send all IPv4 whois queries from 172.16.61.5
sudo ip addr add 172.16.61.5/29 dev eth0
sudo iptables -t nat -A POSTROUTING -o eth0 -p TCP --dport 43 -j SNAT --to-source 172.16.61.5
sudo iptables -t nat -vnL
이후(스니핑 쿼리 whois -h whois.arin.net <address>
):
지금 내 주소는 172.16.61.5...
[mpenning@Bucksnort ~]$ sudo tshark -i eth0 tcp and port 43
Running as user "root" and group "root". This could be dangerous.
Capturing on eth0
0.000000 172.16.61.5 -> 199.71.0.49 TCP 55091 > nicname [SYN] Seq=0 Win=5840 Len=0
테이블에서 규칙을 삭제하려면...
# Remove the rule... (assuming it is the first nat POSTROUTING rule...)
sudo iptables -D POSTROUTING 1 -t nat
2607:fcff:1001:100:202:55ff:dead:beef에서 IPv6 whois 쿼리 가져오기
IPv6 옵션에는 커널이 필요합니다.NAT66... 바라보다HE.net용 NAT66 설치 지침그리고패킷푸셔: NAT66 덕분에
# IF you have an SNAT66 kernel...
# Send all IPv6 whois queries from 2607:fcff:1001:100:202:55ff:dead:beef
sudo ip -6 addr add 2607:fcff:1001:100:202:55ff:dead:beef/64 dev eth0
sudo ip6tables -t nat66 -A POSTROUTING -o eth0 -p TCP --dport 43 -j SNAT66 --to-source 2607:fcff:1001:100:202:55ff:dead:beef
sudo ip6tables -t nat66 -vnL
# Remove the rule... (assuming it is the first nat POSTROUTING rule...)
sudo ip6tables -D POSTROUTING 1 -t nat66
지금은 이 부분을 증명할 시간이 없습니다 NAT66
...제 연구에 따르면 위 구문이 올바른 것으로 나타났습니다.