人们在互联网上最常使用的就是电子邮件,很多企业用户也经常使用免费电子邮件系统。本文就以step by step的方式引导用户从sendmail源代码开始构建一个可以满足基本工作需要的邮件系统。

sendmail是最重要的邮件传输代理程序。理解电子邮件的工作模式是非常重要的。一般情况下,我们把电子邮件程序分解成用户代理,传输代理和投递代理。用户代理用来接受用户的指令,将用户的信件传送至信件传输代理,如:outlook express、foxmail等。而投递代理则从信件传输代理取得信件传送至最终用户的邮箱,如:procmail。

当用户试图发送一封电子邮件的时候,他并不能直接将信件发送到对方的机器上,用户代理必须试图去寻找一个信件传输代理,把邮件提交给它。信件传输代理得到了邮件后,首先将它保存在自身的缓冲队列中,然后,根据邮件的目标地址,信件传输代理程序将找到应该对这个目标地址负责的邮件传输代理服务器, 并且通过网络将邮件传送给它。对方的服务器接收到邮件之后,将其缓冲存储在本地,直到电子邮件的接收者查看自己的电子信箱。

显然,邮件传输是从服务器到服务器的,而且每个用户必须拥有服务器上存储信息的空间(称为信箱)才能接受邮件(发送邮件不受这个限制)。可以看到,一个邮件传输代理的主要工作是监视用户代理的请求,根据电子邮件的目标地址找出对应的邮件服务器,将信件在服务器之间传输并且将接收到的邮件缓冲或者 提交给最终投递程序。有许多的程序可以作为信件传输代理,但是sendmail是其中最重要的一个,事实证明它可以支持数千甚至更多的用户,而且占用的系统资源相当少。不过,sendmail的配置十分复杂,因此,也有人使用另外的一些工具,如qmail、postfix等等。

当sendmail程序得到一封待发送的邮件的时候,它需要根据目标地址确定将信件投递给对应的服务器,这是通过DNS服务实现的。例如一封邮件的目标地址是ideal@linuxaid.com.cn,那么sendmail首先确定这个地址是用户名(ideal)+机器名(linuxaid.com.cn)的格式,然后,通过查询DNS来确定需要把信件投递给某个服务器。

DNS数据中,与电子邮件相关的是MX记录,例如在linuxaid.com.cn这个域的DNS数据文件中有如下设置:

IN MX 10 mail

IN MX 20 mail1

mail IN A 202.99.11.120

mail1 IN A 202.99.11.121

显然,在DNS中说明linuxaid.com.cn有两个信件交换(MX)服务器,于是,sendmail试图将邮件发送给两者之一。一般来说,排在前面的的MX服务器的优先级别比较高,因此服务 器将试图连接mail.linuxaid.com.cn的25端口,试图将信件报文转发给它。如果成功,你的smtp服务器的任务就完成了,在这以后的任务,将由mail.linuxaid.com.cn来完成。在一般的情况下,mail换器会自动把信件内容转交给目标主机,不过,也存在这样的情况,目标主机(比如linuxaid.com.cn)可能并不存在,或者不执行smtp服务,而是由其mx交换器来执行信件的管理,这时候,最终的信件将保存在mx机器上,直到用户来察看它。

相关查询: 电子邮件 sendmail 源代码 可以满足
最新查询:诺特定理 蛇血 通信和办公自动化设备定点维修维护管理的规定 国民革命军 龙游天下Ⅱ 建筑上 呕心沥血 翠娘 渤海大学文理学院 帕尔贴 鱼峰区 共和党 articulata Ͽѧ˽ѧԺ 中国农业科学院烟草遗传改良与生物技术重点实验室 能效标准标识与绿色照明 阎锡山 监外执行 荷花淀派 大型企业 飞刀剑 neurolemma 蓝莓马芬蛋糕 更上一层楼 新斯的明 体形 北极光手语社区 空气密度 长期护理险 干烧腐竹段 梅花笑脸饼干 布莱克维尔社会理论家指南 ˹ ɳ�ǿ����� Achaearanea 谁能让我靠 春华秋实 施业区 中华人民共和国耕地占用税暂行条例实施细则 云南花灯剧 井上真树夫 钢铁雄心2之末日战役 中型仿蛙蟹 吉布森 及物动词 尼古拉·哈特曼 布衣之交 散热片 江河湖海 荣宝斋 浩如烟海 车桑子 分散主义 传奇色彩 部分地区 根瘤菌 太平天国之天下一统 在国内外 长老会 伊莎美尔 彬彬有礼 仅次于 兹里尼·米克洛什 热核反应 ĴѧԺ 植物凝集素 银洲贝丘遗址 大妻晚成 一段路 悬崖绝壁 中式牛肉汉堡包 自由车 几本书 串行线路 百家争鸣 香菇白菜羹 右安西里 sendmail
友情链接: 知道 电影 百科 好搜 问答 微信 值得买 巨便宜 天天特价 洛阳汽车脚垫 女装 女鞋 母婴 内衣 零食 美妆 汽车 油价 郑州 北京 上海 广州 深圳 杭州 南京 苏州 武汉 天津 重庆 成都 大连 宁波 济南 西安 石家庄 沈阳 南阳 临沂 邯郸 保定 温州 东莞 洛阳 周口 青岛 徐州 赣州 菏泽 泉州 长春 唐山 商丘 南通 盐城 驻马店 佛山 衡阳 沧州 福州 昆明 无锡 南昌 黄冈 遵义
© 2025 haodianxin 百科 豫ICP备14030218号-3 消耗时间:0.082秒 内存2.82MB