Sun Java System Messaging Server 6.3 관리 설명서

9.2 주소 역방향

Direct LDAP를 사용한 주소 역방향은 USE_REVERSE_DATABASE 값 4로 시작되며 이 값은 역방향 데이터베이스를 사용하지 않도록 설정합니다. sleepycat 데이터베이스는 더 이상 사용되지 않으므로 IMTA_TABLE:reverse.txt 파일을 읽도록 USE_TEXT_DATABASES를 설정해야 합니다. 그런 다음 주소 역방향은 앞에서 설명한 라우팅 기능을 토대로 작성됩니다. 특히 이전 버전에서는 다음 형식의 역방향 URL 지정으로 시작되었습니다.

REVERSE_URL=ldap:///$V?mail?sub?$Q

$V 메타 문자는 별칭 URL과 관련하여 이미 설명되었습니다. 그러나 $Q 메타 문자는 별칭 URL에 사용되는 $R 메타 문자와 기능이 비슷하지만 특별히 주소 역방향에 사용하도록 되어 있습니다. $R과 달리 이 메타 문자는 주소 역방향의 후보인 주소가 포함된 속성을 검색하는 필터를 생성합니다. 검색할 속성 목록은 MTA 옵션 LDAP_MAIL_REVERSES에서 가져옵니다. 이 옵션이 설정되지 않은 경우 local.imta.schematag configutil 매개 변수가 검사되고 그 값에 따라 적절한 기본 속성 집합이 선택됩니다.


주 –

REVERSE_URL은 어떠한 이유로도 변경하지 않는 것이 좋습니다.


표 9–10에서는 local.imta.schematag 값과 선택된 기본 속성을 보여 줍니다.

표 9–10 local.imta.schematag 값과 속성

스키마 태그 값 

속성 

sims40

mail,rfc822mailalias

nms41

mail,mailAlternateAddress

ims50

mail,mailAlternateAddress

그러나 $Q는 사용하기에 더 이상 적합하지 않습니다. 메일 캡처와 다른 기능이 제대로 작동하도록 하기 위해 일치하는 항목이 발생했다는 사실 외에도 일치한 속성에 주의하도록 주소 역방향이 향상되었습니다. 이것은 $Q 대신에 $R을 사용하여 필터를 지정해야 한다는 것을 의미합니다. 또한 주소 역방향이 필요할 수 있는 속성 목록을 반환하는 $N 메타 문자가 추가되었습니다.

$N 값을 정확하게 제어할 수 없습니다. MTA가 주소 역방향에 대한 관련 속성의 고유한 하드 코드된(변경 예정) 목록에서 자동으로 구성됩니다. 다양한 LDAP_* 전역 MTA 옵션을 사용하여 원하는 속성의 이름에 해당하는 MTA를 변경할 경우 실제로는 LDAP에서 다른 속성을 가져오게 됩니다. 그러나 항상 관련 속성의 MTA 방법과 구문적으로 일치하는 속성입니다. 속성은 LDAP_CAPTURE(기본값 없음), LDAP_RECIPIENTLIMIT(기본값 없음), LDAP_RECIPIENTCUTOFF(기본값 없음), LDAP_SOURCEBLOCKLIMIT(기본값 없음), LDAP_SOURCE_CHANNEL(기본값 없음), LDAP_PERSONAL_NAME(기본값 없음), LDAP_SOURCE_CONVERSION_TAG(기본값 없음), LDAP_PRIMARY_ADDRESS(mail), LDAP_ALIAS_ADDRESSES( mailAlternateAddress), LDAP_EQUIVALENCE_ADDRESSES( mailEquivalentAddress) 및 LDAP_SPARE_* 속성입니다.

결과 옵션 값은 다음과 같습니다.

REVERSE_URL=ldap:///$V?$N?sub?$R

항상 그랬던 것처럼 local.imta.schematag는 쉼표로 구분된 목록이 될 수 있습니다. 둘 이상의 스키마가 지원될 경우 중복 항목이 제거된 결합된 속성 목록이 사용됩니다.

또한 이 필터는 원래 제공되었던 주소뿐만 아니라 로컬 부분이 동일하지만 실제로 도메인 트리에서 발견된 도메인( 9.1.1.1 다시 쓰기 규칙 방법에서 저장)을 가진 주소를 검색합니다. 도메인 트리 조회의 반복 특성은 두 개의 주소가 다를 수 있다는 것을 의미합니다.

예를 들어, 도메인 siroe.com이 도메인 트리에 표시되며 MTA가 다음 주소를 찾는다고 가정해 봅니다.

u@host1.siroe.com

$Rims50 스키마 태그의 확장 결과로 얻어지는 필터는 다음과 같습니다.


     (|(mail=u@siroe.com) 
     (mail=u@host1.siroe.com)
     (mailAlternateAddress=u@siroe.com)
     (mailAlternateAddress=u@host1.siroe.com)
     (mailEquivalentAddress=u@siroe.com)
     (mailEquivalentAddress=u@host1.siroe.com))

역방향 조회는 다양한 속성을 반환하고, MTA는 메일 속성(정확하게 LDAP_PRIMARY_ADDRESS에 명명된 속성)을 주소 역방향에 대한 속성으로 사용해야 합니다. mailEquivalentAddress(정확하게 LDAP_EQUIVALENCE_ADDRESSES에 명명된 속성)도 허용됩니다.

URL이 생성된 후 LDAP 검색이 수행됩니다. 검색에 성공하면 LDAP는 여러 속성을 임의의 순서로 반환합니다. 검색에 실패하거나 오류가 발생하면 원래 주소가 변경되지 않습니다.

주소 역방향 작업이 수행되는 빈도(특히 메일 헤더에 표시될 수 있는 주소 수가 지정된 경우)와 관련 디렉토리 쿼리의 비용으로 인해 부정적 및 긍정적 결과를 모두 캐시해야 합니다. 이 작업은 동적으로 확장되는 메모리 내장의 개방형 체인 해시 테이블을 통해 구현됩니다. 캐시의 최대 크기는 REVERSE_ADDRESS_CACHE_SIZE MTA 옵션(기본값 100000)으로 설정하며 캐시의 항목에 대한 시간 초과는 REVERSE_ADDRESS_CACHE_TIMEOUT MTA 옵션(기본값 600초)으로 설정합니다. 캐시는 실제로 LDAP URL 및 LDAP 결과가 아니라 주소 자체를 저장합니다.