[이석준]님이 남기신 글:
>먼저 웹서버에서 디버깅 테스트한 결과입니다.
>----------------------------------------------------------------------
>1.
># telnet mail.aaa.co.kr 25
>Trying 211.111.111.112...
>Connected to mail.aaa.co.kr.
>Escape character is '^]'.
>220 localhost.localdomain ESMTP Sendmail 8.11.6/8.11.6; Sat, 20 Sep 2003 09:27:54
+0900
>
>2.
>Array ( [0] => 211.111.111.112 )
>----------------------------------------------------------------------
>웹서버에서 시행한 거구요, 전부 메일서버의 주소로 나타나고
있습니다.
>
>1.에서 웹서버로 해봤을 때는
># telnet aaa.co.kr 25
>Trying 211.111.111.113...
>telnet: connect to address 211.111.111.113: Connection refused
>
>웹서버에 현재 센드메일이 떠 있지는 않습니다.
>
둘다 이상없군요.
>또 웹서버의 /etc/mail/local-host-names 파일에
>aaa.co.kr
>mail.aaa.co.kr
>를 추가하고 mail() 함수로 웹에서 user@aaa.co.kr user@mail.aaa.co.kr
>로 보내 보았을때는 둘다 mail()함수에서 false를 리턴합니다.
이전에는 메일서버계정으로
가지는 않더라도 mail()에서는 true가 나왔었구요.
>
아..
sendmail 8.11 버전부터 웹서버에 있는 센드메일을 이용하여
(php.ini 에서 smtp=localhost 인경우를 말함) 메일을 보낼려면
웹서에 있는 센드메일을 구동해줘야 합니다.
>이때 웹서버에서의 메일로그 입니다.
>---------------------------------------------------------------------
>Sep 20 09:50:08 localhost sendmail[5558]: h8K0o8g05558: to=ㅇㅇㅇ<admin@aaa.co.kr>, delay=00:00:00, mailer=local,
pri=0, dsn=5.1.1, stat=User unknown
>Sep 20 09:50:08 localhost sendmail[5558]: h8K0o8g05558: from=nobody, size=200,
class=0, nrcpts=1, msgid=<200309200050.h8K0o8g05558@localhost.localdomain>,
relay=nobody@localhost
>Sep 20 09:50:08 localhost sendmail[5558]: h8K0o8g05558: h8K0o8h05558: DSN: User
unknown
>Sep 20 09:50:08 localhost sendmail[5558]: h8K0o8h05558: to=root, delay=00:00:00,
xdelay=00:00:00, mailer=local, pri=30300, dsn=2.0.0, stat=Sent
>
>Sep 20 09:50:27 localhost sendmail[5567]: h8K0oRT05567: to=ㅇㅇㅇ<admin@mail.aaa.co.kr>, delay=00:00:00,
mailer=local, pri=0, dsn=5.1.1, stat=User unknown
>Sep 20 09:50:27 localhost sendmail[5567]: h8K0oRT05567: from=nobody, size=208,
class=0, nrcpts=1, msgid=<200309200050.h8K0oRT05567@localhost.localdomain>,
relay=nobody@localhost
>Sep 20 09:50:27 localhost sendmail[5567]: h8K0oRT05567: h8K0oRU05567: DSN: User
unknown
>Sep 20 09:50:27 localhost sendmail[5567]: h8K0oRU05567: to=root, delay=00:00:00,
xdelay=00:00:00, mailer=local, pri=30308, dsn=2.0.0, stat=Sent
>----------------------------------------------------------------------
설정상의 문제는 없군요. 모두 리졸빙문제인것
같네요.
mailer 를 보면 모두 local 입니다.
이것은
aaa.co.kr, mail.aaa.co.kr 모두 웹서버로 리졸빙한다는 의미입니다.
>
>웹서버에 수신자설정이 되어있는 상태에서 위처럼
admin가상유저로
보내지않고 aaa의 계정으로 보내봤더니 mail()에서 둘다 true가
나옵니다. 웹서버에서 mail명령어로 확인해 보니 메일이
왔습니다. 아래는 이때의 메일로그 입니다.
>----------------------------------------------------------------------
>Sep 20 10:24:27 localhost sendmail[5693]: h8K1ORw05693: from=nobody, size=244,
class=0, nrcpts=1, msgid=<200309200124.h8K1ORw05693@localhost.localdomain>,
relay=nobody@localhost
>Sep 20 10:24:27 localhost sendmail[5696]: h8K1ORw05693: to=ㅇㅇㅇ<aaa@mail.aaa.co.kr>, ctladdr=nobody (99/99),
delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30244, dsn=2.0.0,
stat=Sent
>
>Sep 20 10:25:08 localhost sendmail[5704]: h8K1P8F05704: from=nobody, size=213,
class=0, nrcpts=1, msgid=<200309200125.h8K1P8F05704@localhost.localdomain>,
relay=nobody@localhost
>Sep 20 10:25:08 localhost sendmail[5707]: h8K1P8F05704: to=ㅇㅇㅇ<aaa@aaa.co.kr>, ctladdr=nobody (99/99),
delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30213, dsn=2.0.0,
stat=Sent
>----------------------------------------------------------------------
역시 예상되로 리졸빙문제이군요.
즉
웹서버의 mail() 함수를 이용해서 user@aaa.co.kr user@mail.aaa.co.kr
로 메일을 보내면
둘다 모두 최정 목적지가 메일서버가 아니라 웹서버로
가게되어 있군요.
웹서버에서 리졸빙은 모두 정상적인데(디버깅
테스트에 의해서)
유독 mail() 함수에 의한 리졸빙이 꼬인것 같네요.
1. 웹서버전과 PHP 버전
2. php.ini 에서 메일관련 설정 smtp 부분
(아니면 phpinfo() 의 결과 URL)
3. 웹서버의 센드메일 구동유무(현재 off 되어 있죠?)
4. 메일서버 == 2차네임서버 인데, 이 2차네임서버의 구동 유무
(현재 가능한 Off 하는것이 좋겠군요)
5. 웹서버에서
<?php
$mxhost = array();
$weight = array();
echo 'MX check: '.checkdnsrr('aaa.co.kr','MX')."<BR>\n";
$result = getmxrr('aaa.co.kr',$mxhost,$weight);
echo 'getmxrr check :'.$result."<BR>\n";
print_r($mxhost);
print_r($weight);
?>
의 결과를 다시 포스팅해 주세요.
현재 aaa.co.kr 에 대한 MX 리졸빙이 꼬인상태입니다.
>
>그리고 메일서버에는 현재 아래처럼 수신자설정이
되어있습니다.
>localhost
>mail.aaa.co.kr
>aaa.co.kr
>www.aaa.co.kr
>...
>admin등에 대한 가상유저 설정도 되어 있구요, admin@aaa.co.kr로 오는 스펨메일들은
메일서버에서 pop3로 잘 받아집니다.
>
>
이것은 맞군요.
|