현재 복제 커널(094226ad94f4)은 대소문자를 구분하지 않는 파일 시스템에서 이러한 충돌을 일으킵니다.
'include/uapi/linux/netfilter/xt_CONNMARK.h'
'include/uapi/linux/netfilter/xt_connmark.h'
'include/uapi/linux/netfilter/xt_DSCP.h'
'include/uapi/linux/netfilter/xt_dscp.h'
'include/uapi/linux/netfilter/xt_MARK.h'
'include/uapi/linux/netfilter/xt_mark.h'
'include/uapi/linux/netfilter/xt_RATEEST.h'
'include/uapi/linux/netfilter/xt_rateest.h'
'include/uapi/linux/netfilter/xt_TCPMSS.h'
'include/uapi/linux/netfilter/xt_tcpmss.h'
'include/uapi/linux/netfilter_ipv4/ipt_ECN.h'
'include/uapi/linux/netfilter_ipv4/ipt_ecn.h'
'include/uapi/linux/netfilter_ipv4/ipt_TTL.h'
'include/uapi/linux/netfilter_ipv4/ipt_ttl.h'
'include/uapi/linux/netfilter_ipv6/ip6t_HL.h'
'include/uapi/linux/netfilter_ipv6/ip6t_hl.h'
'net/netfilter/xt_DSCP.c'
'net/netfilter/xt_dscp.c'
'net/netfilter/xt_HL.c'
'net/netfilter/xt_hl.c'
'net/netfilter/xt_RATEEST.c'
'net/netfilter/xt_rateest.c'
'net/netfilter/xt_TCPMSS.c'
'net/netfilter/xt_tcpmss.c'
'tools/memory-model/litmus-tests/Z6.0+pooncelock+poonceLock+pombonce.litmus'
'tools/memory-model/litmus-tests/Z6.0+pooncelock+pooncelock+pombonce.litmus'
누구든지 나한테 설명해줄 수 있어?왜이름이 약간 다른 각 헤더 파일의 복사본이 두 개씩 있는 것 같나요?
답변1
모든 Linux 파일 시스템은 대소문자를 구분하므로 Linux 커널 소스 코드는 대소문자를 구분하지 않습니다.
이들 각각은 유사하지만 정확히 동일한 코드는 아닙니다.
예를 들어, 이 둘은 유사한 개념에 대해 서로 다른 것입니다. 커널 구성 옵션 중에서 선택할 수 있습니다.
경쟁 버전은 다음 위치에 있습니다 xt_hl.c
.
IP tables module for matching the value of the TTL
Hop Limit matching module
config NETFILTER_XT_MATCH_HL
tristate '"hl" hoplimit/TTL match support'
depends on NETFILTER_ADVANCED
help
HL matching allows you to match packets based on the hoplimit
in the IPv6 header, or the time-to-live field in the IPv4
header of the packet.
Match를 사용하면 iptables 규칙을 작성하여 주어진 홉 제한을 찾을 수 있습니다.
대상 버전은 다음 위치에 있습니다 xt_HL.c
.
TTL modification target for IP tables
Hop Limit modification target for ip6tables
config NETFILTER_XT_TARGET_HL
tristate '"HL" hoplimit target support'
depends on IP_NF_MANGLE || IP6_NF_MANGLE
depends on NETFILTER_ADVANCED
help
This option adds the "HL" (for IPv6) and "TTL" (for IPv4)
targets, which enable the user to change the
hoplimit/time-to-live value of the IP header.
While it is safe to decrement the hoplimit/TTL value, the
modules also allow to increment and set the hoplimit value of
the header to arbitrary values. This is EXTREMELY DANGEROUS
since you can easily create immortal packets that loop
forever on the network.
Target에는 패킷 홉 제한을 수정하는 iptables 규칙 작성에 대한 지원이 추가되었습니다.
코드는 IP 테이블 및 홉 제한을 처리하는 것과 유사합니다.