1、怎樣配置LINUX 下的DNS使域安裝成功
防火牆不代開是正確的。打開會受限制。
1、檢查你的DNS的主配置文件、正向、反向解析文件。
2、檢查域的設置。
3、檢查Linux主機名和域名是否相同。
2、linux下/etc/hosts下的三個域名是什麼?
分別為:
127.0.0.1
localhost.localdomain localhost
hosts文件格式是一行一條記錄,分別是IP地址 hostname
aliases,三者用空白字元分隔,aliases可選。
127.0.0.1到localhost這一條建議不要修改,因為很多應用程序會用到這個,比如sendmail,修改之後這些程序可能就無法正常運行。
修改hostname後,如果想要在本機上用newhostname來訪問,就必須在/etc/hosts文件里添加一條newhostname的記錄。比如我的eth0的IP是192.168.1.61,我將hosts文件修改如下:
#hostname
blog.infernor.net
# cat /etc/hosts
127.0.0.1 localhost.localdomain
localhost
192.168.1.61 blog.infernor.net
blog
這樣,我就可以通過blog或者blog.infernor.net來訪問本機。
Linux系統在向DNS伺服器發出域名解析請求之前會查詢/etc/hosts文件,如果裡面有相應的記錄,就會使用hosts裡面的記錄。/etc/hosts文件通常裡麵包含這一條記錄
3、怎麼看linux的域名或ip地址
ip地址:1)ifconfig 2)ip addr
域名:1)nslookup {ip} (前提是:查詢的域名做了反向解析) 2)百度 查詢啦 用它查
4、Linux伺服器可以被訪問,但是訪問不了別的網址,ping其他的域名和IP也都不通
couldn't resolve host name in /www/ip.php on line 22 是不是dns不能解析啊,你伺服器dns配置對了嗎
5、LINUX系統,每次ping域名都要等十幾秒才能通,通了以後不丟包
看一下你的dns設置,
cat /etc/resolv.conf
再看一下你的nsswitch設置,
cat /etc/nsswitch.conf | grep hosts
6、求高手:我在linux下配置了DNS,name服務可以啟動,但是使用nslookup無法解析域名
我英語也不咋的 給你翻譯了下
---------------------------------------------------------------
將英語譯成中文(簡體)
使用命名ð 3架F -克查看時,出現如下情況:
08 - 10 - 2010 15:29:21.128無法添加命令通道127.0.0.1#953:使用中的地址
08 - 10 - 2010 15:29:21.130無法添加命令通道::1#953:使用中的地址
08 - 10 - 2010 15:29:21.131忽略配置文件記錄的聲明由於- g選項
08 - 10 - 2010 15:29:21.132 pid文件無法打開'/ var / run中/命名/ named.pid':許可權被拒絕
08 - 10 - 2010 15:29:21.133退出(因早期致命錯誤)
------------------------------------------------------------
你應該吧你的配置文件貼出來,看你配錯了沒?
(DNS 主配置文件路徑 /USR/NAME.CONF 正向配置 /VAR/NAMED/你創的配置文件名)
給幾個建議:(檢查)
1。要給自己設個固定的IP地址
2。主機名是否正確。
3。開啟服務
4。你本機的DNS指向是否是你配的DNS。
可以敲這個命令 #nslookup
>server 127.0.0.1 #也可以填你的配的DNS地址,也可填為回環地址作用是用127.0.0.1去解析下面的地址
[填入你要解析的,已經設置好的地址]
可以在網上搜些例子,照搬上去。
確保你配置的文件正確,看是你的配置錯誤不是。如果你連正向配置文件是啥都不知道,我就白費口舌了,
7、怎麼能讓linux 配置域名 訪問本地項目 實現文件共享
可以使用比較簡單的NFS
一、NFS服務簡介
NFS 是Network File System的縮寫,即網路文件系統。一種使用於分散式文件系統的協定,由Sun公司開發,於1984年向外公布。功能是通過網路讓不同的機器、不同的操作系統能夠彼此分享個別的數據,讓應用程序在客戶端通過網路訪問位於伺服器磁碟中的數據,是在類Unix系統間實現磁碟文件共享的一種方法。
NFS 的基本原則是「容許不同的客戶端及服務端通過一組RPC分享相同的文件系統」,它是獨立於操作系統,容許不同硬體及操作系統的系統共同進行文件的分享。
NFS在文件傳送或信息傳送過程中依賴於RPC協議。RPC,遠程過程調用 (Remote Procere Call) 是能使客戶端執行其他系統中程序的一種機制。NFS本身是沒有提供信息傳輸的協議和功能的,但NFS卻能讓我們通過網路進行資料的分享,這是因為NFS使用了一些其它的傳輸協議。而這些傳輸協議用到這個RPC功能的。可以說NFS本身就是使用RPC的一個程序。或者說NFS也是一個RPC SERVER。所以只要用到NFS的地方都要啟動RPC服務,不論是NFS SERVER或者NFS CLIENT。這樣SERVER和CLIENT才能通過RPC來實現PROGRAM PORT的對應。可以這么理解RPC和NFS的關系:NFS是一個文件系統,而RPC是負責負責信息的傳輸。
二、系統環境
系統平台:CentOS release 5.6 (Final)
NFS Server IP:192.168.1.108
防火牆已關閉/iptables: Firewall is not running.
SELINUX=disabled
三、安裝NFS服務
NFS的安裝是非常簡單的,只需要兩個軟體包即可,而且在通常情況下,是作為系統的默認包安裝的。
nfs-utils-* :包括基本的NFS命令與監控程序
portmap-* :支持安全NFS RPC服務的連接
1、查看系統是否已安裝NFS
系統默認已安裝了nfs-utils portmap 兩個軟體包。
2、如果當前系統中沒有安裝NFS所需的軟體包,需要手工進行安裝。nfs-utils 和portmap 兩個包的安裝文件在系統光碟中都會有。
# mount /dev/cdrom /mnt/cdrom/
# cd /mnt/cdrom/CentOS/
# rpm -ivh portmap-4.0-65.2.2.1.i386.rpm
# rpm -ivh nfs-utils-1.0.9-50.el5.i386.rpm
# rpm -q nfs-utils portmap
四、NFS系統守護進程
nfsd:它是基本的NFS守護進程,主要功能是管理客戶端是否能夠登錄伺服器;
mountd:它是RPC安裝守護進程,主要功能是管理NFS的文件系統。當客戶端順利通過nfsd登錄NFS伺服器後,在使用NFS服務所提供的文件前,還必須通過文件使用許可權的驗證。它會讀取NFS的配置文件/etc/exports來對比客戶端許可權。
portmap:主要功能是進行埠映射工作。當客戶端嘗試連接並使用RPC伺服器提供的服務(如NFS服務)時,portmap會將所管理的與服務對應的埠提供給客戶端,從而使客戶可以通過該埠向伺服器請求服務。
五、NFS伺服器的配置
NFS伺服器的配置相對比較簡單,只需要在相應的配置文件中進行設置,然後啟動NFS伺服器即可。
NFS的常用目錄
/etc/exports NFS服務的主要配置文件
/usr/sbin/exportfs NFS服務的管理命令
/usr/sbin/showmount 客戶端的查看命令
/var/lib/nfs/etab 記錄NFS分享出來的目錄的完整許可權設定值
/var/lib/nfs/xtab 記錄曾經登錄過的客戶端信息
NFS服務的配置文件為 /etc/exports,這個文件是NFS的主要配置文件,不過系統並沒有默認值,所以這個文件不一定會存在,可能要使用vim手動建立,然後在文件裡面寫入配置內容。
/etc/exports文件內容格式:
<輸出目錄> [客戶端1 選項(訪問許可權,用戶映射,其他)] [客戶端2 選項(訪問許可權,用戶映射,其他)]
a. 輸出目錄:
輸出目錄是指NFS系統中需要共享給客戶機使用的目錄;
b. 客戶端:
客戶端是指網路中可以訪問這個NFS輸出目錄的計算機
客戶端常用的指定方式
指定ip地址的主機:192.168.0.200
指定子網中的所有主機:192.168.0.0/24 192.168.0.0/255.255.255.0
指定域名的主機:david.bsmart.cn
指定域中的所有主機:*.bsmart.cn
所有主機:*
c. 選項:
選項用來設置輸出目錄的訪問許可權、用戶映射等。
NFS主要有3類選項:
訪問許可權選項
設置輸出目錄只讀:ro
設置輸出目錄讀寫:rw
用戶映射選項
all_squash:將遠程訪問的所有普通用戶及所屬組都映射為匿名用戶或用戶組(nfsnobody);
no_all_squash:與all_squash取反(默認設置);
root_squash:將root用戶及所屬組都映射為匿名用戶或用戶組(默認設置);
no_root_squash:與rootsquash取反;
anonuid=xxx:將遠程訪問的所有用戶都映射為匿名用戶,並指定該用戶為本地用戶(UID=xxx);
anongid=xxx:將遠程訪問的所有用戶組都映射為匿名用戶組賬戶,並指定該匿名用戶組賬戶為本地用戶組賬戶(GID=xxx);
其它選項
secure:限制客戶端只能從小於1024的tcp/ip埠連接nfs伺服器(默認設置);
insecure:允許客戶端從大於1024的tcp/ip埠連接伺服器;
sync:將數據同步寫入內存緩沖區與磁碟中,效率低,但可以保證數據的一致性;
async:將數據先保存在內存緩沖區中,必要時才寫入磁碟;
wdelay:檢查是否有相關的寫操作,如果有則將這些寫操作一起執行,這樣可以提高效率(默認設置);
no_wdelay:若有寫操作則立即執行,應與sync配合使用;
subtree:若輸出目錄是一個子目錄,則nfs伺服器將檢查其父目錄的許可權(默認設置);
no_subtree:即使輸出目錄是一個子目錄,nfs伺服器也不檢查其父目錄的許可權,這樣可以提高效率;
六、NFS伺服器的啟動與停止
在對exports文件進行了正確的配置後,就可以啟動NFS伺服器了。
1、啟動NFS伺服器
為了使NFS伺服器能正常工作,需要啟動portmap和nfs兩個服務,並且portmap一定要先於nfs啟動。
# service portmap start
# service nfs start
2、查詢NFS伺服器狀態
# service portmap status
# service nfs status
3、停止NFS伺服器
要停止NFS運行時,需要先停止nfs服務再停止portmap服務,對於系統中有其他服務(如NIS)需要使用時,不需要停止portmap服務
# service nfs stop
# service portmap stop
4、設置NFS伺服器的自動啟動狀態
對於實際的應用系統,每次啟動LINUX系統後都手工啟動nfs伺服器是不現實的,需要設置系統在指定的運行級別自動啟動portmap和nfs服務。
# chkconfig --list portmap
# chkconfig --list nfs
設置portmap和nfs服務在系統運行級別3和5自動啟動。
# chkconfig --level 35 portmap on
# chkconfig --level 35 nfs on
七、實例
1、將NFS Server 的/home/david/ 共享給192.168.1.0/24網段,許可權讀寫。
伺服器端文件詳細如下:
# vi /etc/exports
/home/david 192.168.1.0/24(rw)
2、重啟portmap 和nfs 服務
# service portmap restart
# service nfs restart
# exportfs
3、伺服器端使用showmount命令查詢NFS的共享狀態
# showmount -e//默認查看自己共享的服務,前提是要DNS能解析自己,不然容易報錯
# showmount -a//顯示已經與客戶端連接上的目錄信息
4、客戶端使用showmount命令查詢NFS的共享狀態
# showmount -e NFS伺服器IP
5、客戶端掛載NFS伺服器中的共享目錄
命令格式
# mount NFS伺服器IP:共享目錄 本地掛載點目錄
# mount 192.168.1.108:/home/david/ /tmp/david/
# mount |grep nfs
掛載成功。
查看文件是否和伺服器端一致。
6、NFS的共享許可權和訪問控制
現在我們在/tmp/david/ 裡面建立一個文件,看看許可權是什麼
# touch 20130103
這里出現Permission denied,是因為NFS 伺服器端共享的目錄本身的寫許可權沒有開放給其他用戶,在伺服器端打開該許可權。
# chmod 777 -R /home/david/
再次在客戶端/tmp/david/ 裡面建立一個文件
我用root 用戶建立的文件,變成了nfsnobody 用戶。
NFS有很多默認的參數,打開/var/lib/nfs/etab 查看分享出來的/home/david/ 完整許可權設定值。
# cat /var/lib/nfs/etab
默認就有sync,wdelay,hide 等等,no_root_squash 是讓root保持許可權,root_squash 是把root映射成nobody,no_all_squash 不讓所有用戶保持在掛載目錄中的許可權。所以,root建立的文件所有者是nfsnobody。
下面我們使用普通用戶掛載、寫入文件測試。
# su - david
$ cd /tmp/david/
$ touch 2013david
普通用戶寫入文件時就是自己的名字,這也就保證了伺服器的安全性。
關於許可權的分析
1. 客戶端連接時候,對普通用戶的檢查
a. 如果明確設定了普通用戶被壓縮的身份,那麼此時客戶端用戶的身份轉換為指定用戶;
b. 如果NFS server上面有同名用戶,那麼此時客戶端登錄賬戶的身份轉換為NFS server上面的同名用戶;
c. 如果沒有明確指定,也沒有同名用戶,那麼此時 用戶身份被壓縮成nfsnobody;
2. 客戶端連接的時候,對root的檢查
a. 如果設置no_root_squash,那麼此時root用戶的身份被壓縮為NFS server上面的root;
b. 如果設置了all_squash、anonuid、anongid,此時root 身份被壓縮為指定用戶;
c. 如果沒有明確指定,此時root用戶被壓縮為nfsnobody;
d. 如果同時指定no_root_squash與all_squash 用戶將被壓縮為 nfsnobody,如果設置了anonuid、anongid將被壓縮到所指定的用戶與組;
7、卸載已掛載的NFS共享目錄
# umount /tmp/david/
八、啟動自動掛載nfs文件系統
格式:
<server>:</remote/export> </local/directory> nfs < options> 0 0
# vi /etc/fstab
保存退出,重啟系統。
查看/home/david 有沒有自動掛載。
自動掛載成功。
九、相關命令
1、exportfs
如果我們在啟動了NFS之後又修改了/etc/exports,是不是還要重新啟動nfs呢?這個時候我們就可以用exportfs 命令來使改動立刻生效,該命令格式如下:
# exportfs [-aruv]
-a 全部掛載或卸載 /etc/exports中的內容
-r 重新讀取/etc/exports 中的信息 ,並同步更新/etc/exports、/var/lib/nfs/xtab
-u 卸載單一目錄(和-a一起使用為卸載所有/etc/exports文件中的目錄)
-v 在export的時候,將詳細的信息輸出到屏幕上。
具體例子:
# exportfs -au 卸載所有共享目錄
# exportfs -rv 重新共享所有目錄並輸出詳細信息
2、nfsstat
查看NFS的運行狀態,對於調整NFS的運行有很大幫助。
3、rpcinfo
查看rpc執行信息,可以用於檢測rpc運行情況的工具,利用rpcinfo -p 可以查看出RPC開啟的埠所提供的程序有哪些。
4、showmount
-a 顯示已經於客戶端連接上的目錄信息
-e IP或者hostname 顯示此IP地址分享出來的目錄
5、netstat
可以查看出nfs服務開啟的埠,其中nfs 開啟的是2049,portmap 開啟的是111,其餘則是rpc開啟的。
最後注意兩點,雖然通過許可權設置可以讓普通用戶訪問,但是掛載的時候默認情況下只有root可以去掛載,普通用戶可以執行sudo。
NFS server 關機的時候一點要確保NFS服務關閉,沒有客戶端處於連接狀態!通過showmount -a 可以查看,如果有的話用kill killall pkill 來結束,(-9 強制結束)
8、linux系統下假域名的問題
嚴格來說,163和gmail沒有啟用反向域名解析,因為反向域名解析查詢需要一點時間,可能會影響系統的速度,所以163、gmail不採取這個防垃圾功能
9、Linux DNS配置 每10分鍾將DNS資料庫備份到/dnsdata中
linux DNS伺服器配置
基本理論:
DNS系統的作用是把域名和IP對應起來。
正向解析:根據域名(主機名)查找對應的地址。
反向解析:根據IP地址查詢對應的域名(主機名)。
查詢
遞歸查詢:大多數客戶機向DNS伺服器解析域名的方式。
迭代查詢:大多數DNS伺服器向其它DNS伺服器解析域名的方式。
DNS伺服器的類型
緩存域名伺服器:也稱唯高速緩存伺服器。通過向其它域名伺服器查詢獲得域名與IP地址的對應記錄,將域名查詢結果緩存到本地,提高重復查詢時的速度。
主域名伺服器:特定DNS區域的官方伺服器,具有唯一性。負責維護該區域內的所有域名與IP的映射記錄。
從域名伺服器:也稱輔助域名伺服器。其維護的域名與IP地址的映射記錄來源於主域名伺服器。
環境准備:
臨時關閉selinux和iptables
#setenforce 0
#service iptables stop
查詢相關軟體包:
[root@localhost ~]# yum search bind
Loaded plugins: proct-id, refresh-packagekit, subscription-manager
Updating Red Hat repositories.
====================================================================================== N/S Matched: bind ======================================================================================
PackageKit-device-rebind.i686 : Device rebind functionality for PackageKit
bind.i686 : The Berkeley Internet Name Domain (BIND) DNS (Domain Name System) server
bind-chroot.i686 : A chroot runtime environment for the ISC BIND DNS server, named(8)
bind-utils.i686 : Utilities for querying DNS name servers
其中各軟體包的作用如下:
bind: 提供域名服務的主要程序及相關文件。
bind-chroot:為bind提供一個偽裝的根目錄以增強安全性。
bind-utils:提供對DNS伺服器測試的工具程序(如nslookup、dig等)。
安裝BIND軟體包#yum install *bind*
配置DNS伺服器:
bind伺服器端程序
主要執行程序:/usr/sbin/named
服務腳本:、etc/init.d/named
默認監聽埠:53
主配置文件: /etc/named.conf
保存DNS解析記錄的數據文件: /var/named/chroot/var/named
查詢bind程序的配置文件列表
[root@localhost ~]# rpm -qc bind
/etc/logrotate.d/named
/etc/named.conf
/etc/named.iscdlv.key
/etc/named.rfc1912.zones
/etc/named.root.key
/etc/rndc.conf
/etc/rndc.key
/etc/sysconfig/named
/var/named/named.ca
/var/named/named.empty
/var/named/named.localhost
/var/named/named.loopback
查看主配置文件named.conf
#vim /etc/named.conf
主配置文件解析:
全局配置部分:
默認的全局配置項如下:
10 options {
11 listen-on port 53 { 127.0.0.1; }; //監聽的埠和介面IP地址
12 listen-on-v6 port 53 { ::1; };
13 directory "/var/named"; //dns區域的數據文件默認存放位置
14 mp-file "/var/named/data/cache_mp.db";
15 statistics-file "/var/named/data/named_stats.txt";
16 memstatistics-file "/var/named/data/named_mem_stats.txt";
17 allow-query { localhost; }; //允許dns查詢的客戶機列表,any表示所有
18 recursion yes; //是否允許客戶機進行遞歸查詢
19
20 dnssec-enable yes;
21 dnssec-validation yes;
22 dnssec-lookaside auto;
23
24 /* Path to ISC DLV key */
25 bindkeys-file "/etc/named.iscdlv.key";
26 };
全局配置中還有如下選項:
forwarders {202.102.24.68;12.3.3.3;}; //將本域名伺服器不能解析的條目轉發給其它DNS伺服器的IP地址
默認的區域配置項如下:
35 zone "." IN {
36 type hint; //區域類型。hint為根區域;master為主區域; slave為輔助區域
37 file "named.ca"; //該區域對應的區域數據配置文件名
38 };
區域配置中還有如下選項:
allow-transfer {189.98.90.23;}; //允許下載區域資料庫的從域名伺服器IP地址
allow-update {none;}; //允許動態更新的客戶端IP地址(none表示全部禁止)
添加如下區域配置:
zone 「my.com」 IN {
type master; //主區域
file 「my.com」; //該區域對應的區域數據配置文件名
allow-transfer {192.168.153.1;}; //允許下載區域資料庫的從域名伺服器IP地址
allow-update {none;};
};
zone 「153.168.192.in-addr.arpa」 IN { //表示針對IP192.168.153.130反向解析
type master; //主區域
file 「192.168.153.my.arpa」; //該區域對應的區域數據配置文件名
};
配置完了,可以執行如下命令對named.conf文件進行語法檢查。
#named-checkconf
注意:倒序網路地址.in-addr.arpa 表示反向區域
主配置文件最後還有一行是:
include 「/etc/named.rfc1912.zones」 //該文件包含/etc/named.rfc1912.zones文件
區域數據配置文件:
先看一下named.localhost的內容:
$TTL 1D //time to live 生存時間
@ IN SOA @ rname.invalid. ( //」rname.invalid」DNS區域地址
0 ; serial //更新序列號
1D ; refresh //更新時間
1H ; retry //重試延時
1W ; expire //失效時間
3H ) ; minimum //無效地址解析記錄的默認緩存時間
NS @ //name server 域名服務記錄
A 127.0.0.1 //address 只用在正向解析的區域數據文件中
AAAA ::1
新建2個對應的區域數據配置文件:
#touch my.com
#touch 192.168.153.my.arpa
#vim my.com
$TTL 86400
@ IN SOA my.com. admin.my.com ( //admin.myNaN為該區域管理員的郵箱地址
200900201
3H
15M
1W
1D
)
@ IN NS ns1.my.com. //當前域的DNS伺服器地址
IN MX 10 mail.my.com. //用於設置當前域的郵件伺服器域名地址,數字10表示優先順序別,數字越大優先順序越低
ns1 IN A 192.168.153.130
mail IN A 192.168.153.130
www IN A 192.168.153.130
ftp IN CNAME www //CNAME別名(canonical name)記錄,表示ftp.my.com和www.my.com對應同一個IP.
[root@localhost named]# vim 192.168.153.my.arpa
$TTL 86400
@ IN SOA my.com. admin.my.com (
200900201
3H
15M
1W
1D
)
@ IN NS ns1.my.com.
130 IN PTR ftp.my.com
啟動DNS服務
[root@localhost ~]# service named start
測試:
配置一台ftp伺服器用於測試:
#service vsftpd start //啟動vsftpd服務
當前網卡的配置:
eth0: 192.168.0.1/24
eth1: 192.168.153.130/24
[root@localhost named]# nslookup 192.168.153.130
Server: 127.0.0.1
Address: 127.0.0.1#53
130.153.168.192.in-addr.arpa name = www.my.com.
[root@localhost ~]# nslookup ftp.my.com
Server: 127.0.0.1
Address: 127.0.0.1#53
ftp.my.com canonical name = www.my.com.
Name: www.my.com
Address: 192.168.153.130
測試成功
10、為什麼我的Linux Nginx添加了新域名新站點,訪問新域名卻是另一個網站
如果你的配置文件沒有錯,你添加的是新的域名的話,有沒有可能是你的域名沒有被正常的dns伺服器解析?
建議檢查一下網卡裡面的DNS=888.888.88.88這個,然後本地nslookup 解析一下你的域名看看,能不能正常的解析出來ip,然後反向解析一下。
如果不是這個問題的話,那就還是nginx的配置文件的邏輯有問題了。
分開來一點一點分析一下,期待你盡快解決。