내 시스템 centos 7에서 주로 ipv4를 사용하도록 만드는 방법(사용 가능한 경우)

내 시스템 centos 7에서 주로 ipv4를 사용하도록 만드는 방법(사용 가능한 경우)

저는 AWS 머신에서 CentOS 7을 실행하고 있습니다. 최근에 IPv6를 활성화했는데 모든 것이 잘 작동하고 있습니다. 단, PHP 연결 요청(명령줄에서도 컬링)은 항상 IPv4 대신 IPv6 사용을 선호한다는 점만 다릅니다. 이로 인해 Apple, Android에 알림을 보내는 등 이를 실제로 지원하지 않는 일부 사이트에서 문제가 발생하며 모든 것이 IPv4에서 잘 작동합니다.

모든 나가는 요청에 IPv6 대신 IPv4를 사용하도록 하려면 어떻게 해야 합니까? 또한 일부 클라이언트는 IPv6만 사용하므로 수신 IPv6을 비활성화하고 싶지 않습니다.

답변1

대부분의 IPv6 지원 프로그램은 시스템 DNS 확인자 라이브러리를 사용하여 호스트의 기본 주소(IPv4 또는 IPv6)를 보고합니다.

/etc/gai.conf이 파일을 사용하여 파서 라이브러리의 기본 설정을 조정할 수 있습니다 .

우선순위 규칙은 파일의 이 섹션에 지정됩니다.

# precedence  <mask>   <value>
#    Add another rule to the RFC 3484 precedence table.  See section 2.1
#    and 10.3 in RFC 3484.  The default is:
#
#precedence  ::1/128       50
#precedence  ::/0          40
#precedence  2002::/16     30
#precedence ::/96          20
#precedence ::ffff:0:0/96  10
#
#    For sites which prefer IPv4 connections change the last line to
#
#precedence ::ffff:0:0/96  100

내장된 기본값은 주석 값으로 나열되지만, 직접 설정을 지정하면 기본값이 전혀 사용되지 않습니다. 따라서 파일 끝에 다음을 추가하십시오.

# To prefer IPv4 over everything else
precedence ::ffff:0:0/96  100
precedence  ::1/128       50
precedence  ::/0          40
precedence  2002::/16     30
precedence ::/96          20

IPv4에서 IPv6을 사용하여 들어오는 연결에 응답하는 것은 불가능하며 그 반대의 경우도 마찬가지입니다. IP 및 TCP 프로토콜의 규칙에 따라 모든 연결 시도는 요청이 이루어진 프로토콜을 사용하여 응답해야 합니다.

관련 정보