先写用于DNS的bind。

一、 移植环境

1 、硬件环境:

Host : X86 PC

Target : MPC8377E 开发板

2 、软件环境:

Host : Red Hat 4.1.2-12 , Linux kernel 2.6.29.1

Target : Linux kernel 2.6.25

3 、源码包:

openssl-0.9.8k.tar.gz

libxml2-sources-2.7.3.tar.gz

bind-9.6.1.tar.gz

4 、编译工具:

powerpc-linux-gnu-gcc

二、 移植步骤

实现 DNS 功能的软件 BIND 有两个依赖库,分别为: openssl 与 libxml2 ,所以我们首先需要准备好这两个库。

、交叉编译 openssl

a )创建工作目录

假设我的工作目录为 /root/Aaron ,

# cd /root/Aaron

# mkdir openssl-0.9.8k

# cd openssl-0.9.8k

# mkdir compressed install source

其中 compressed 用于存放源码包, install 为软件安装目录, source 为源码包解压目录。

b )获取源码包

从 http://www.openssl.org/ 上获取 openssl 的最新稳定版本,目前为 0.9.8k 。

将源码包拷贝到 compressed 目录下,

# cp openssl-0.9.8k.tar.gz /root/Aaron/openssl-0.9.8k/compressed

c )解压源码包

# cd /root/Aaron/openssl-0.9.8k/compressed

# tar –zxvf openssl-0.9.8k.tar.gz –C ../source

d )生产 Makefile 文件

# cd ../source/openssl-0.9.8k

# ./Configure –prefix=/root/Aaron/openssl-0.9.8k/install os/compiler:powerpc-linux-gnu-gcc

e )编译并安装

# make

# make install

、交叉编译 libxml2

a )创建工作目录

假设我的工作目录为 /root/Aaron ,

# cd /root/Aaron

# mkdir libxml2-2.7.3

# cd libxml2-2.7.3

# mkdir compressed install source

其中 compressed 用于存放源码包, install 为软件安装目录, source 为源码包解压目录。

b )获取源码包

从 http://xmlsoft.org/ 上获取 libxml2 的最新稳定版本,目前为 2.7.3 。

将源码包拷贝到 compressed 目录下,

# cp libxml2-sources-2.7.3.tar.gz /root/Aaron/ libxml2-2.7.3/compressed

c )解压源码包

# cd /root/Aaron/ libxml2-2.7.3/compressed

# tar –zxvf libxml2-sources-2.7.3.tar.gz –C ../source

d )生产 Makefile 文件

# cd ../source/ libxml2-2.7.3

# CC=powerpc-linux-gnu-gcc ./configure –prefix=/root/Aaron/ libxml2-2.7.3/install –host=powerpc-linux-gnu

e )编译并安装

# make

# make install

、交叉编译 bind

a )创建工作目录

假设我的工作目录为 /root/Aaron ,

# cd /root/Aaron

# mkdir bind-9.6.1

# cd bind-9.6.1

# mkdir compressed install source

其中 compressed 用于存放源码包, install 为软件安装目录, source 为源码包解压目录。

b )获取源码包

从 https://www.isc.org/ 上获取 bind 的最新稳定版本,目前为 9.6.1 。

将源码包拷贝到 compressed 目录下,

# cp bind-9.6.1.tar.gz /root/Aaron/ bind-9.6.1/compressed

c )解压源码包

# cd /root/Aaron/ bind-9.6.1/compressed

# tar –zxvf bind-9.6.1.tar.gz –C ../source

d )生产 Makefile 文件

# cd ../source/ bind-9.6.1

# CC=powerpc-linux-gnu-gcc   LDFLAGS=-static BUILD_CC=gcc ./configure –host=powerpc-linux-gnu –with-openssl=/root/Aaron/openssl-0.9.8k/install –enable-epoll=no –with-randomdev= --disable-linux-caps –with-libxml2=/root/Aaron/libxml2-2.7.3/install

e )编译并安装

# make

# make install

f )移植

将 /usr/local/sbin 、 /usr/local/bin 、 /usr/local/include 、 /usr/local/lib 、 /usr/local/share/man 下新生成的与 bind 有关的文件拷贝到目标机的相同目录下。

这样,移植工作就基本完成了,接下来就是配置了。这方面网上的文章很多,有空的话我也另开一篇写写。

移植DNS服务bind的更多相关文章

  1. 【Linux】DNS服务-BIND从服务器、缓存服务器及转发服务器配置(三)

    环境 操作系统:CentOS 6.5 DNS软件:bind(安装参照:[Linux]DNS服务-BIND基础配置(二)) BIND从服务器 从服务器就是在bind的主配置文件中添加从域example. ...

  2. 【Linux】DNS服务-BIND基础配置(二)

    BIND简介 现在使用最为广泛的DNS服务器软件是BIND(Berkeley Internet Name Domain),最早有伯克利大学的一名学生编写,现在最新的版本是9,有ISC(Internet ...

  3. 【Linux】DNS服务-BIND基础配置

    1.BIND简介 现在使用最为广泛的DNS服务器软件是BIND(Berkeley Internet Name Domain),最早有伯克利大学的一名学生编写,现在最新的版本是9,有ISC(Intern ...

  4. (一)跟我一起玩Linux网络服务:DNS服务——BIND(/etc/named.conf、/var/named)设置实现和解释

    2015年3月24更新 添加了要加的配置域名解析器(否则会找不到域名)     一.创建该实验的的模型   配置完gate虚拟机的两张网卡后,就启动gate的转发 [root@localhost ro ...

  5. 使用Bind搭建DNS服务

    DNS域名解析服务(Domain Name System)是用于解析域名与IP地址对应关系的服务,功能上可以实现正向解析与反向解析: 正向解析:根据主机名(域名)查找对应的IP地址. 反向解析:根据I ...

  6. dns 服务架构优化 - 百万级并发不是梦 - bind+namedmanager+dnsmasq

    bind: DNS服务端. namedmanager: DNS web管理页面. dnsmasq: 并发查询上游dns域名解析. 问题:作为消息推送业务,单台业务机器域名解析并发达到上万次.业务机器集 ...

  7. centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课

    centos  DNS服务搭建  DNS原理  使用bind搭建DNS服务器 配置DNS转发 配置主从  安装dig工具  DHCP  dhclient  各种域名解析记录  mydns DNS动态更 ...

  8. Bind搭建DNS服务

    DNS域名解析服务(Domain Name System)是用于解析域名与IP地址对应关系的服务,功能上可以实现正向解析与反向解析: 正向解析:根据主机名(域名)查找对应的IP地址. 反向解析:根据I ...

  9. DNS解析原理与Bind部署DNS服务

    DNS是什么? DNS(Domain Name System,域名系统)是互联网上最核心的带层级的分布式系统,它负责把域名转换为IP地址.反查IP到域名的反向解析以及宣告邮件路由等信息,使得基于域名提 ...

随机推荐

  1. 转载__Java内部类

    内部类是指在一个外部类的内部再定义一个类.内部类作为外部类的一个成员,并且依附于外部类而存在的.内部类可为静态,可用protected和private修饰(而外部类只能使用public和缺省的包访问权 ...

  2. YCbCr;YUV;RGB

    1.  来源的差异 yuv色彩模 型来源于rgb模型,该模型的特点是将亮度和色度分离开,从而适合于图像处理领域. 应用:basic color model used in analogue color ...

  3. firebug下载时出现there was an error loading firebug

    打开Firefox -> Preferences -> Advance ->Certificates 将Query OSCP....前面的checkbox取消

  4. JAVA final关键字,常量的定义

    final(最终)是一个修饰符1.final可以修饰类,函数,变量(成员变量,局部变量)2.被final修饰后的类不可以被其它类继承3.被final修饰后的方法(函数)不可以被重写4.被final修饰 ...

  5. Android之BroadcastReceiver1

    1.触发发送广播 public class MainActivity extends Activity { private Button sendButton; @Override protected ...

  6. RBStoryboardLink库的使用注意事项 -转载至--坤哥MartinLi博客

    RBStoryboardLink库的使用注意事项 demo下载:https://github.com/MartinLi841538513/RBStoryboardLinkDemo 操作步骤: 1,引入 ...

  7. JS 中的 Window 对象

    窗口对象的属性和方法: 在js最外层写的function可以还可以理解为window对象的一个方法.定义的变量也可以称之为window对象的一个属性.例如:window.alert("--- ...

  8. perl处理含有中文字符的json编码

    例子:1. 有php的 json函数生成的中文串 [root@tts177:/tmp]$/opt/php/bin/php -r 'echo json_encode(Array("a" ...

  9. Tesseract-OCR 字符识别---样本训练

    Tesseract是一个开源的OCR(Optical Character Recognition,光学字符识别)引擎,可以识别多种格式的图像文件并将其转换成文本,目前已支持60多种语言(包括中文).  ...

  10. linux入门学习1

    推荐 实验楼网站 在线的linux环境和课程学习 这是一些摘要和笔记 UNIX/Linux历史简介 操作系统始于二十世纪 50 年代,当时的操作系统能运行批处理程序.但是不能实现交互.交互式操作系统也 ...