smtp 서버주소


하나로

 두루넷

 코넷

 코넷 ppp

 천리안

 보라넷

 나우누리

 LG U+

 mail.hananet.net

 smtp.korea.com

 kornet.net

 ppp.kornet.net

 mail.chollian.net

 bora.dacom.co.kr

 mail.nownuri.net

 smtp.xpeed.com

 하이텔

 엘림넷

 신비로

 아이네트

 채널아이

 에듀넷

 SK


 mail.hitel.net

 elim.net

 mail.shinbiro.com

 mail.nuri.net

 mail.channeli,net

 edunet4u.net

 mail.hanafos.com




블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

윈도우XP 기준으로 설명하지만 상위 버전 윈도우7과는 큰 차이는 없고, 다만 이해만 된다면 크게 어렵지 않다 생각됩니다. 먼저 다음의 경로로 들어가서 SMTP 서버를 설치해줍니다.

 "시작" -> "제어판" -> "프로그램 추가/제거" -> "Windows 구성요소 추가/제거" 를 선택합니다.


창이 뜨면 아래 그림의 "인턴넷 정보 서비스(lls)"를 선택하고 "자세히" 버튼을 선택합니다.



SMTP 서버만을 구성할 것이므로 "SMTP Service"를 선택하고 확인을 클릭하면 시디를 요구하는데, WinXP 시디를 넣어 구성요소를 설치해 줍니다.



설치가 완료되면 제어판의 관리도구를 선택해서 들어갑니다.



"관리도구"에서 "인터넷 정보 서비스"를 선택합니다. 참고로 윈도우2000 버전에서는 "인터넷 서비스 관리자" 로 이름이 표시됩니다.



우리는 SMTP만을 구성할 것이므로 "웹사이트" 구동이 "시작됨"으로 표시되어 있으면 아래와 같이 중지를 시켜 줍니다.



다음 그림처럼 "기본 SMTP 가상 서버"를 선택해서 마우스 오른쪽 버튼을 클릭하면 "속성"이 나오는데, "속성"을 선택합니다. 윈도우2000 버전에서는 "등록정보"로 이름이 표시됩니다. 만약, 아래 그림의 "웹사이트"가 구동중이라면 중지를 시켜야 합니다.



"일반 탭"의 "IP 주소"의 값이 "할당되지 않은 주소 모두" 를 선택합니다. 윈도우 2000에서는 "모두 할당되지 않음"으로 표시됩니다.



"액세스 탭"을 선택해서 "익명 액세스"를 선택합니다.



"액세스 탭"의 "연결 제어"의 "연결"을 선택하면 아래 그림이 나탄나는데, "아래 목록만 제외(X)"를 선택하고 창을 닫습니다.



다음 "액세스 탭"의 "릴레이 제한"에서 "릴레이"를 선택하면 다음 그림처럼 창이 나타나면 마찬가지로 "아래 목록만 제외(X)"만을 선택하고 창을 닫습니다.



다음 "배달 탭"을 선택해서 다음 그림처럼 구성해줍니다.



위와 같이 모든 설정을 완료하였다면 SMTP 서버를 다음과 같이 시작해주도록 합니다. 혹시나 이미 시작되어있다면 중지하고, 다시 시작을 해줍니다.



테스트로 메일을 보내봅니다. 메일이 정상적으로 발송되는지의 여부는

C:\Inetpub\mailroot\Queue 디렉토리로 이동해서 확인할 수 있습니다. 메일을 보내면 대기중인 메일이 다음 그림처럼 나타나며 대기중인 메일이 발송이 되면 목록에서 사라지게 됩니다.




관련글: 2011/10/11 - [웹서버/SMTP 서버] - 윈도우용 센드메일 구축




블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요

아웃룩은 윈도우를 설치하거나 ms오피스를 설치하거나 하면, 설치되는 기본 프로그램으로 자체적으로 smtp를 구축하지 못하더라도 외부 smtp 서버를 이용하면 누구나 무료로 이용할 수 있는 프로그램입니다. ISP 통신사업자의 서버를 이용하거나 외부메일 지메일, 테라메일 등을 이용합니다. 참고로 pop은 받는 메일 서버이고, smtp는 보내는 서버가 됩니다.

아웃룩 처음 사용자라면 실행시 바로 설치항목으로 넘어 가게 되지만, 처음 사용자가 아니더라도 아웃룩을 실행시켜서 메뉴에서 "도구 > 계정설정 > 새로만들기"를 선택하면 됩니다. (아웃룩2003 사용자는 "전자메일계정 > 새 전자 메일 계정추가" 입니다)

1.
 
2.
 
3.

 
4.


5. 지메일 사용자라면 별도로 어려운 서버주소를 기억할 필요가 없습니다. 단순히 이메일 주소 기입만으로도 아웃룩 구축이 완성되니까요. 사용자 이름은 적당히 작성해도 상관없지만 전자메일주소는 앞으로 사용할 주소를 기입합니다.

지메일 사용자라면 "전자메일주소"에 지메일 주소를 작성하고, 테라메일 사용자라면 테라메일 주소를 작성하되 패스워드는 웹메일 로그인시 사용되는 패스워드여야 합니다.


6. 로그인에 아무 문제가 없다면 "전자메일구성완료"라는 문구가 나옵니다. 만약 서버주소를 알고 있고, 수동으로 별도 구성하여야 한다면, 4번 항목에서 "수동으로 서버설설정 또는 추가 서버유형 구성" 항목에 체크하고, 다음을 선택합니다.


7. 이 화면은 Outlook 2007 에만 나오는 화면입니다.


8. 외부 메일서버를 구성할 것이므로 "인터넷 전자 메일"을 선택하고, 다음을 클릭합니다.


그림을 보는 바와 같이 "받는 서버"는 지메일로 되어 있고, "보내는 서버"는 LG U+ 서버로 설정되어 있습니다. 서버주소에 대한 자세한 설명은 관련글(윈도우용 센드메일 구축)을 참고하시면 됩니다.

"전자 메일 주소"는 앞으로 사용할 이메일 주소를 적어 줍니다. 로그온 정보의 사용자 이름은 본인 메일 아이디로 적어 주고, 암호는 메일 계정에서 설정하신 메일 암호입니다.  비밀번호변경은 해당 메일 서비스에서 진행하여야 합니다.

만약, "받는 서버" 로그인 정보와 "보내는 서버" 로그인 정보가 틀리다면, "기타 설정"을 클릭해서 아이디와 패스워드를 따로 작성하여야 합니다.

9.

10. 네이트나 다음, 네이버 등 외부 메일을 사용할 경우 접속 포트가 틀리는게 보통이므로 "고급탭"에서 포트설정이 가능합니다. "고급탭"을 선택합니다.


11. 아웃룩 설정을 마무리하고, 메일이 정상적으로 보내거나 받을 수 있는지 테스트해 봅니다.


혹여나 메일 서버 설정을 잘못 구성하였더라도 괜찮습니다. 아웃룩 실행해서 "메뉴 > 도구 > 계정 설정" 에서 언제든지 계정을 추가하거나 삭제, 변경이 가능합니다.

12.

블로그 이미지

하보니

하보니와 함께하는 phP 초보

Tag SMTP

댓글을 달아 주세요


일반 사용자가 자체적으로 smtp 를 구축하기에는 여간 어려운게 아닙니다. 그래서 보다 쉬운 외부 SMTP 를 이용하거나 무료로 배포되는 SMTP를 이용하게 되는데, 이번에는 LG U+ 사용자에게 무료로 제공되는 SMTP 를 이용해서 구축하고자 합니다.

이 기능을 사용하기 위해서는 웹사이트에 가입하여야 하는데, 가입되어 있지 않다면, http://home.uplus.co.kr 에 회원가입하도록 합니다.

다음, "마이홈>웹회원정보수정" 으로 이동해서 하단부 "비밀번호 발급 받기"를 선택합니다.


비밀번호 입력란에 사용할 패스워드를 입력해 줍니다.


SMTP 를 사용하기 위한 준비는 모두 마쳤습니다. 아이디는 웹사이트에 등록된 아이디를 사용하고, 앞서 설정한 값이 패스워드가 됩니다. 이제 메일이 발송되는지 테스트해 봅니다. 참고로 SMTP 주소가 smtp.xpeed.com 이고, xpeed.com 이 도메인이 됩니다.

관련글: 2011/10/11 - [웹서버/SMTP] - 윈도우용 센드메일 구축
블로그 이미지

하보니

하보니와 함께하는 phP 초보

Tag SMTP

댓글을 달아 주세요

이 프로그램은 SMTP는 아닙니다. 단지, 윈도우에서 mail 함수를 사용할 수 있도록 해주는 기능입니다. 다음 링크에서 다운로드 받거나 http://glob.com.au/sendmail/ 에서 최신 버전을 다운로드 받아 설치하도록 합니다.

sendmail.zip


다운로드 받은 파일을 적절한 위치에 압축해제 합니다. 참고로 저는 C:\user\sendmail 폴더에 압축해제를 하였습니다. 다음 php.ini 파일을 열어 [sendmail_path] 코드를 찾아 아래와 같이 수정합니다.

 ; C:/설치경로/sendmail.exe -t
 ; 경로는 \ 대신 / 로 해주어야 합니다.
 sendmail_path = "C:/user/sendmail/sendmail.exe -t"

위에서 이미 언급해듯이 이 프로그램은 mail 함수를 사용하도록 해주는 것 뿐, SMTP는 아닙니다. 그래서 현재 SMTP가 구축되어 있지 않다면, SMTP를 구축해 줄 필요가 있습니다. SMTP 구축이 어렵다면, 지메일이나 테라메일 등 외부  SMTP 를 사용하여야 합니다.

 [지메일]
 ; id@gmail.com 일때만 정상 동작합니다.
 smtp_server = smtp.gmail.com
 auth_username = myid
 auth_password = mypasswd
 hostname = gmail.com

 [테라메일]
 ; id@teramail.com 일때만 정상 동작합니다.
 smtp_server = mail.teramail.com
 auth_username = myid
 auth_password = mypasswd
 hostname = teramail.com

다음은 ISP에서 제공하는 SMTP 서버 주소를 이용하는 방법입니다. 당연히 해당 통신사에 연결된 컴퓨터여야 하며, 자세한 문의는 통신사에 하면 되는데, 아이디나 패스워드 발급방법입니다.

 [ KT ]
 smtp_server = kornet.net
 auth_username = myid
 auth_password = mypasswd
 hostname = kornet.net

 [ SK ]
 smtp_server = mail.hanafos.com
 auth_username = myid
 auth_password = mypasswd
 hostname = hanafos.com

 [ LG U+ ]
 smtp_server = smtp.xpeed.com
 auth_username = myid
 auth_password = mypasswd
 hostname = xpeed.com

외부메일에 등록, 가입을 하였다면, C:\설치경로\sendmail\sendmail.ini 파일을 열어 적절히 수정해 줍니다.

 ; SMTP 서버 도메인 입니다.
 ; 지메일이나 테라메일 서버명을 적습니다. 지메일을 사용한다면 다음과 같이 작성합니다.
 smtp_server = smtp.gmail.com

 ; 기본 접속 포트 25
 smtp_port = 25

 ; SMTPS (SSL) 보안서버
 ; auto = use SSL for port 465, otherwise try to use TLS
 ; ssl  = alway use SSL
 ; tls  = always use TLS
 ; none = never try to use SSL

 smtp_ssl = auto

 ; 지메일 서버를 사용한다면 아래처럼 도메인을 입력합니다.

 default_domain= gmail.com

 ; 에러가 발생하면 기록될 파일명입니다.
 ; C:\설치경로\sendmail\ 에 에러가 기록됩니다.

 error_logfile = error.log

 ; 외부메일에 등록된 아이디나 패스워드를 적습니다.
 ; 지메일이나 테라메일에 등록된 아이디, 패스워드를 입력합니다.

 auth_username = 아이디
 auth_password = 패스워드

 ; pop3는 받는 메일을 구축할 때 필요합니다.
 ; 이 기능은 사용하지 않을 것이므로 지우거나 비워 둡니다.

 pop3_server =
 pop3_username =
 pop3_password =

 ; force the sender to always be the following email address
 ; this will only affect the "MAIL FROM" command, it won't modify
 ; the "From: " header of the message content

 force_sender =

 ; force the sender to always be the following email address
 ; this will only affect the "RCTP TO" command, it won't modify
 ; the "To: " header of the message content

 force_recipient =

 ; sendmail 도메인을 기록합니다. 지메일 서버를 사용한다면 아래처럼 도메인을 입력합니다.

 hostname = gmail.com


이제 설정을 마무리하였으면, 서버를 재시작하거나 컴퓨터를 재부팅해 줍니다. 설정이 제대로 되었는지 mail 함수를 테스트해 봅니다. '보내는 사람' 메일은 반드시 적어서 테스트하여야 합니다.

 <?php
 // 받는 사람
 $to      'myid@domain.com'

 $subject 
'제목입니다.';
 $message '내용입니다.';

 // 보내는 사람
 $from 'myid@domain.com';

 $headers 'From: ' $from "\r\n" .
    
'Reply-To: webmaster@example.com' "\r\n" .
    
'X-Mailer: PHP/' phpversion();

 if(
mail($to$subject$message$headers)){
    echo 
"메일 전송되었습니다.";
 }
 ?>

참고로 SMTP 서버가 윈도우를 사용한다면 \n 를 \r\n 로 바꿔주어야 합니다.

블로그 이미지

하보니

하보니와 함께하는 phP 초보

Tag SMTP

댓글을 달아 주세요

bool checkdnsrr ( string $host [, string $type ] ) (PHP 4, PHP 5)

Dns 서버에는 호스트에 대한 정보, 다양한 리소스 레코드를 저장하고 있어서 checkdnsrr 함수로 레코드 여부를 판단할 수 있습니다. 레코드값이 존재하면 true를, 없으면 false를 반환합니다.

 리소스 레코드       의 미
 A 호스트의 32비트 ipv4 주소
 CNAME 호스트의 엘리어스 이름
 MX 메일교환기(도메인의 메일전송 담당호스트: mail exchanger)
 NS 하위 도메인에 대한 DNS 서버
 PTR ip주소를 호스트 이름으로 매핑
 AAAA 호스트의 64비트 ipv6 주소(PHP 5에 추가)

이 함수는 부울형으로만 판단할 수 있으며, 리소스 레코드는 반환하지 않습니다. 레코드를 반환값으로 하려면, dns_get_record함수를 사용하여야 합니다.

다음 그림으로 리소스 레코드를 확인할 수 있습니다.


예제 (ex #1

 <?php
 
// 윈도우 환경이라면....
 
if (!function_exists('checkdnsrr') && 
           (strtoupper(substr(PHP_OS03)) === 'WIN')) { 

       function checkdnsrr($host$type='MX') {
           if (empty(
$host
)) { return; }
           
$arr = array(
 
'A','MX','NS','SOA','PTR','CNAME','AAAA','A6','SRV',
 
'NAPTR','TXT','ANY'
);
           if (!
in_array(strtoupper($type),$arr
)) { return; }
           
$hostname escapeshellcmd($host
);

           
exec('%SystemRoot%\System32\nslookup -type='.$type.' '.$hostname$output
);
           foreach(
$output as $line
){
                if (
preg_match('/^'.$hostname.'/',$line)) {
                  return true
                } 

           }
       }
 }

 if(
checkdnsrr('empal.com''MX') == true
){
      echo 
"이 도메인은 MX 레코드가 있습니다."
;
 } else {
      echo 
"이 도메인은 MX 레코드가 없습니다."
;
 }

 if(
checkdnsrr('yahoo.co.kr''CNAME') == true
){
      echo 
"엘리어스 이름이 존재합니다."
;
 } else {
      echo 
"엘리어스 이름이 존재하지 않습니다."
;
 }

 
// ANY는 모든 리소스의 레코드를 확인합니다.
 // 무료 도메인을 사용하더라도 상위 도메인은 레코드가 있으므로 이 값은 true입니다.
 
if(checkdnsrr('test.dothome.co.kr''ANY') == true
){
      echo 
"실제 존재하는 도메인입니다."
;
 } else {
      echo 
"존재하지 않는 도메인입니다."
;
 }
 
 
?>


블로그 이미지

하보니

하보니와 함께하는 phP 초보

Tag SMTP

댓글을 달아 주세요

int getmxrr ( string $hostname , array $mxhosts [, array $ weight ] )

Searches DNS for MX records corresponding to hostname 에 대응이 되는 MX 레코드를 찾기위해 DNS를 찾습니다. 레코드값이 있으면 TRUE를 없으면 FALSE를 반환합니다.

윈도우에서 nslookup.exe에 mx값을 요청했을때 출력입니다. 이를 기초로 함수를 작성할 수 있습니다.


예제 (ex #1

 <?php
 
// 윈도우환경 일때
 
if(strtoupper(substr(PHP_OS03)) === 'WIN'
) {
    function 
getmxrr($host, &$hosts, &$weight=false
) {
       
$hosts 
= array();
       
$weight 
= array();
       
$preference 
= array();
       
$records 
= array();
       
exec('%SystemRoot%\System32\nslookup.exe -q=mx '.escapeshellarg($host), $arr
);
       foreach(
$arr as $line
) {
          if (
preg_match("/.*mail exchanger = (.*)/",
                         
$line$records
)) {
     
$hosts[] = trim($records[1
]);
    }
    if (
preg_match("/.*MX preference = ([0-9]+)/",
                         
$line$preference
)) {
     
$weight[] = trim($preference[1
]);
    }
       }
       return( 
count($hosts) > 
);
   }
 }
 else {
   
getmxrr($host$mxhosts$weight
);
 }

 
/*
    $mxhosts = mail exchanger 값
    $weight = MX preference 값
 */
 
print_r(array($mxhosts,$weight
);

 
/* 결과
 Array
 (
    [0] => Array
        (
            [0] => m.mx.mail.yahoo.com
            [1] => a.mx.mail.yahoo.com
            [2] => b.mx.mail.yahoo.com
            [3] => c.mx.mail.yahoo.com
            [4] => d.mx.mail.yahoo.com
            [5] => e.mx.mail.yahoo.com
            [6] => f.mx.mail.yahoo.com
            [7] => g.mx.mail.yahoo.com
            [8] => h.mx.mail.yahoo.com
            [9] => i.mx.mail.yahoo.com
            [10] => j.mx.mail.yahoo.com
            [11] => k.mx.mail.yahoo.com
            [12] => l.mx.mail.yahoo.com
        )
    [1] => Array
        (
            [0] => 1
            [1] => 1
            [2] => 1
            [3] => 1
            [4] => 1
            [5] => 1
            [6] => 1
            [7] => 1
            [8] => 1
            [9] => 1
            [10] => 1
            [11] => 1
            [12] => 1
        )
 )
 */
 ?>


블로그 이미지

하보니

하보니와 함께하는 phP 초보

Tag SMTP

댓글을 달아 주세요