두 개의 서로 다른 네트워크 어댑터가 있는 호스트를 통해 생성된 DHCP 서브넷 내에서 올바른 IP 전달을 설정하려고 합니다.
나의 현재 상황은 이렇습니다.
첫 번째 노드에는 두 개의 네트워크 어댑터가 있습니다. 첫 번째 노드는 WAN에 연결되고 두 번째 노드는 DHCP를 통해 서브넷을 생성합니다. 다음은 DHCP 구성입니다(마스터로 식별된 호스트가 게이트웨이여야 함).
subnet 10.142.0.0 netmask 255.255.255.0 { interface enp0s31f6; option routers 10.142.0.1; option subnet-mask 255.255.255.0; option domain-search "net.local"; option broadcast-address 10.142.0.255; option domain-name-servers 8.8.8.8; range 10.142.0.20 10.142.0.100; } host master{ hardware ethernet d4:5d:df:1a:26:40; fixed-address 10.142.0.1; } host node01 { hardware ethernet d4:5d:df:13:69:42; fixed-address 10.142.0.2; } host node02{ hardware ethernet d4:5d:df:13:69:45; fixed-address 10.142.0.3; }
다음 iptables 규칙을 추가했습니다.여기에 제공된 답변
노드는 IP를 올바르게 가져오고 SSH를 통해 노드에 연결할 수 있습니다. 외부 호스트에 대한 ping은 제대로 작동하지만 호스트 이름을 확인하려고 하면 알 수 없는 이름 또는 서비스 오류가 발생합니다. DNS 조회에도 IP 테이블 규칙을 설정해야 합니까?
미리 감사드립니다!
편집: CURL GOOGLE IP를 직접 시도했지만 No route to host
핑
curl http://216.58.205.131 curl: (7) Failed connect to 216.58.205.131:80; No route to host
하면 모든 것이 예상대로 작동합니다.
ping 216.58.205.131 PING 216.58.205.131 (216.58.205.131) 56(84) bytes of data. 64 bytes from 216.58.205.131: icmp_seq=1 ttl=54 time=23.7 ms 64 bytes from 216.58.205.131: icmp_seq=2 ttl=54 time=20.0 ms 64 bytes from 216.58.205.131: icmp_seq=3 ttl=54 time=19.9 ms
답변1
인터넷 검색 후 문제를 발견했습니다. 게이트웨이(10.142.0.1)의 방화벽이 전달 규칙을 무시하는 요청을 차단하고 있습니다(전달 규칙을 극복하는 다른 규칙이 있을 수 있음).
처음에 규칙을 삽입하면 성공합니다.
iptables -I FORWARD -i <LAN_ETH> -o <WAN_ETH> -j ACCEPT