NFS服務端概述
NFS,是Network File System的簡寫宙拉,即網絡文件系統(tǒng)。網絡文件系統(tǒng)是FreeBSD支持的文件系統(tǒng)中的一種谢澈,也被稱為NFS煌贴; NFS允許一個系統(tǒng)在網絡上與他人共享目錄和文件御板。
模式: C/S 模式
端口:
NFS是Net File System的簡寫,即網絡文件系統(tǒng).NFS通常運行于2049端口牛郑。
部署NFS
由于在使用NFS服務進行文件共享之前,需要使用RPC(Remote Procedure Call井濒,遠程過程調用)服務將NFS服務器的IP地址和端口號等信息發(fā)送給客戶端。因此酪惭,在啟動NFS服務之前者甲,還需要順帶重啟
并啟用rpcbind服務程序。
服務器端配置:
第一步:下載nfs和rpcbind
[root@ken test]# yum install nfs-utils rpcbind -y
第二步:配置nfs的文件
[root@ken ~]# vim /etc/exports
/test 192.168.64.5/24(rw)
第三步:重啟nfs和rpcbind
[root@ken ~]# systemctl restart rpcbind nfs
客戶端配置:
第四步:客戶端下載nfs-utils
如果不下載nf會報如下的錯誤:
[root@ken ~]# mount -t nfs 192.168.64.4:/test /test
mount: wrong fs type, bad option, bad superblock on 192.168.64.4:/test,
missing codepage or helper program, or other error
(for several filesystems (e.g. nfs, cifs) you might
need a /sbin/mount.<type> helper program)
In some cases useful info is found in syslog – try
dmesg | tail or so.
[root@ken ~]# yum install nfs-utils -y
第五步:查看共享的文件信息
[root@ken ~]# showmount -e 192.168.64.4
Export list for 192.168.64.4:
/test 192.168.64.5/24
第六步:掛載NFS至本地
[root@ken ~]# mount -t nfs 192.168.64.4:/test /test
[root@ken ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 17G 1.5G 16G 9% /
devtmpfs 476M 0 476M 0% /dev
tmpfs 488M 0 488M 0% /dev/shm
tmpfs 488M 14M 474M 3% /run
tmpfs 488M 0 488M 0% /sys/fs/cgroup
/dev/sda1 1014M 130M 885M 13% /boot
tmpfs 98M 0 98M 0% /run/user/0
/dev/sr0 4.2G 4.2G 0 100% /mnt
192.168.64.4:/test 17G 1.5G 16G 9% /test
解決NFS文件共享無法創(chuàng)建文件的問題
第一步:客戶端測試
[root@ken test]# touch test1
touch: cannot touch ‘test1’: Permission denied
第二步:服務器端更改共享文件的屬主
[root@ken test]# chown -R nfsnobody: /test
第三步:客戶端再次進行測試
[root@ken test]# touch test1
[root@ken test]# ls
ken test test1
NFS共享給多個客戶端
方法一:
[root@ken test]# cat /etc/exports
/test 192.168.64.5/24(rw) 192.168.64.7/24(rw)
方法二:
[root@ken test]# cat /etc/exports
/test 192.168.64.0/24(rw)
方法三:
[root@ken test]# cat /etc/exports
/test *(rw)
NFS服務器共享多個目錄
第一步:
[root@ken test]# cat /etc/exports
/test 192.168.64.5/24(rw)
/test1 192.168.64.7/24(rw)
第二步:客戶端掛載
[root@ken test]# cat /etc/exports
/test 192.168.64.5(rw)
/test1 192.168.64.7(rw)
第三步:客戶端進行驗證
[root@ken ~]# mount -t nfs 192.168.64.4:/test1 /test
mount.nfs: access denied by server while mounting 192.168.64.4:/test1
[root@ken ~]# mount -t nfs 192.168.64.4:/test /test
[root@ken ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 17G 1.5G 16G 9% /
devtmpfs 476M 0 476M 0% /dev
tmpfs 488M 0 488M 0% /dev/shm
tmpfs 488M 14M 474M 3% /run
tmpfs 488M 0 488M 0% /sys/fs/cgroup
/dev/sda1 1014M 130M 885M 13% /boot
tmpfs 98M 0 98M 0% /run/user/0
/dev/sr0 4.2G 4.2G 0 100% /mnt
192.168.64.4:/test 17G 1.5G 16G 9% /test
DHCP服務概述
DHCP服務概述:
名稱:DHCP – Dynamic Host Configuration Protocol 動態(tài)主機配置協(xié)議
功能:DHCP(Dynamic Host Configuration Protocol,動態(tài)主機配置協(xié)議)是一個局域網的網絡協(xié)議刽辙,使用UDP協(xié)議工作, 主要用途:
給內部網絡或網絡服務供應商自動分配IP地址颂翼,主機名慨灭,DNS服務器,域名
特點: C/S 模式
自動分配IP地址呻疹,方便管理
DHCP不會同時租借相同的IP地址給兩臺主機筹陵;
DHCP管理員可以約束特定的計算機使用特定的IP地址;
可以為每個DHCP作用域設置很多選項惶翻;
客戶機在不同子網間移動時不需要重新設置IP地址姑蓝。每次都自動獲取IP地址就可以了。
DHCP的缺點:
當網絡上存在多服務器時旭愧,一個DHCP服務器不能查出已被其它服務器租出去的IP地址宙暇;
DHCP服務器不能跨路由器與客戶機通信议泵,除非路由器允許BOOTP協(xié)議轉發(fā)。
端口:
DHCP服務使用:端口67(bootps) 68(bootpc) 型奥。
例:查看
vim /etc/services
DHCP協(xié)議由 bootp協(xié)議發(fā)展而來碉京,是BOOTP的增強版本,bootps代表服務端端口烫葬, bootpc代表客戶端端口
bootp協(xié)議:引導程序協(xié)議(BOOTP)凡蜻。它可以讓無盤工作站從一個中心服務器上獲得IP地址,為局域網中的無盤工作站分配動態(tài)IP地址划栓,并不需要每個用戶去設置靜態(tài)IP地址忠荞。
DHCP服務運行原理:
運行原理,面試經常問到钻洒,需要大家注意下!
DHCP Client發(fā)現(xiàn)階段:
即DHCP客戶端尋找DHCP服務端的過程称诗,對應于客戶端發(fā)送DHCP Discovery头遭,因為DHCP Server對應于DHCP客戶端是未知的,所以DHCP 客戶端發(fā)出的DHCP Discovery報文是廣播包袜香,源地址為0.0.0.0目的地址為255.255.255.255鲫惶。網絡上的所有支持TCP/IP的主機都會收到該DHCP Discovery報文,但是只有DHCP Server會響應該報文欢策。
注意:客戶端執(zhí)行DHCP DISCOVER 后,如果沒有DHCP 服務器響應客戶端的請求啄清,客戶端會隨機使用169.254.0.0/16 網段中的一個IP 地址配置本機地址俺孙。
169.254.0.0/16是windows的自動專有IP尋址范圍,也就是在無法通過DHCP獲取IP地址時睛榄,由系統(tǒng)自動分配的IP地址段。
DHCP Server 提供階段:
DHCP Server提供階段计露,即為DHCP Server響應DHCP Discovery所發(fā)的DHCP Offer階段憎乙,即DHCP服務器提供IP地址的階段。在網絡中接收到DHCPdiscover發(fā)現(xiàn)信息的DHCP服務器都會做出響應该押,它從尚未出租的IP地址中挑選一個分配給DHCP客戶機阵谚,向DHCP客戶機發(fā)送一個包含出租的IP地址和其他設置的DHCPoffer提供信息
DHCP Client 確認階段:
即DHCP客戶機選擇某臺DHCP服務器提供的IP地址的階段。如果有多臺DHCP服務器向DHCP客戶機發(fā)來的DHCPoffer提供信息奠蹬,則DHCP客戶機只接受第一個收到的DHCPoffer提供信息嗡午,然后它就以廣播方式回答一個DHCPrequest請求信息,該信息中包含向它所選定的DHCP服務器請求IP地址的內容荔睹。之所以要以廣播方式回答,是為了通知所有的DHCP服務器宵距,他將選擇某臺DHCP服務器所提供的IP地址
DHCP Server確認階段:
即DHCP服務器確認所提供的IP地址的階段吨拗。當DHCP服務器收到DHCP客戶機回答的DHCPrequest請求信息之后婿斥,它便向DHCP客戶機發(fā)送一個包含它所提供的IP地址和其他設置的DHCPack確認信息翩瓜,告訴DHCP客戶機可以使用它所提供的IP地址携龟。然后DHCP客戶機便將其TCP/IP協(xié)議與網卡綁定峡蟋,另外,除DHCP客戶機選中的服務器外蕊蝗,其他的DHCP服務器都將收回曾提供的IP地址
DHCP Client重新登錄網絡:
當DHCP Client重新登錄后,就不需要再發(fā)送DHCP discover發(fā)現(xiàn)信息了夸楣,而是直接發(fā)送包含前一次所分配的IP地址的DHCP request請求信息子漩。當DHCP服務器收到這一信息后,它會嘗試讓DHCP客戶機繼續(xù)使用原來的IP地址紧显,并回答一個DHCP ack確認信息缕棵。如果此IP地址已無法再分配給原來的DHCP客戶機使用時(比如此IP地址已分配給其它DHCP客戶機使用),則DHCP服務器給DHCP客戶機回答一個DHCP nack否認信息篙程。當原來的DHCP客戶機收到此DHCP nack否認信息后别厘,它就必須重新發(fā)送DHCP discover發(fā)現(xiàn)信息來請求新的IP地址。
DHCP Client更新租約:
DHCP獲取到的IP地址都有一個租約丹允,租約過期后雕蔽,DHCP Server將回收該IP地址,所以如果DHCP Client如果想繼續(xù)使用該IP地址批狐,則必須更新租約前塔。更新的方式就是承冰,當當前租約期限過了一半后困乒,DHCP Client都會發(fā)送DHCP Renew報文來續(xù)約租期。
部署DHCP服務
實驗環(huán)境:
我的虛擬機使用橋接模式是否可行娜搂? 不行,因為你的局域網中有可能就有DHCP服務器考廉,這樣你就很難携御,讓你的客戶端是從你的DHCP服務器獲得IP地址。
另外婚苹,也可能造成公司局域網中其它機器因為獲得了你DHCP服務器上的IP地址鸵膏,而上不了網±耄可以選擇僅主機模式或者自定義模式。
我使用了兩臺僅主機模式的虛擬機
服務器端定義靜態(tài)IP(xshell可連接)
客戶端設置成DHCP自動獲确乔(重啟網卡會失敗,等待配置完成DHCP服務器端后再重啟網卡U鞒瘛)
關掉僅主機模式虛擬機自帶的DHCP
服務器端操作
第一步:安裝dhcp
[root@ken ~]# yum install dhcp -y
第二步:查看配置文件
[root@ken ~]# cat /etc/dhcp/dhcpd.conf
DHCP Server Configuration file.
see /usr/share/doc/dhcp*/dhcpd.conf.example
see dhcpd.conf(5) man page
第三步:導入樣本文件
[root@ken ~]# cat /usr/share/doc/dhcp*/dhcpd.conf.example >> /etc/dhcp/dhcpd.conf
第四步:編輯配置文件
[root@ken ~]# vim /etc/dhcp/dhcpd.conf
subnet 10.5.5.0 netmask 255.255.255.224 { #定義子網
range 10.5.5.26 10.5.5.30; #定義IP資源池
option domain-name-servers ns1.internal.example.org; #定義DNS地址
option domain-name “internal.example.org”; #定于域名
option routers 10.5.5.1; #定義網關
option broadcast-address 10.5.5.31; #定義廣播地址
default-lease-time 600; #默認租約
max-lease-time 7200; #最大租約
}
subnet 192.168.64.0 netmask 255.255.255.0 {
range 192.168.64.20 192.168.64.40;
default-lease-time 600;
max-lease-time 7200;
}
第五步:重啟DHCP服務
[root@ken ~]# systemctl restart dhcpd
第六步:客服端使用DHCP服務(添加網卡)
第七步:修改客戶端網絡配置文件為dhcp
第八步:重啟客戶端網絡
[root@ken ~]# systemctl restart network
第九步:查看獲取到的IP
僅主機摸下的無IP服務器設置為DHCP服務器
第一步:創(chuàng)建網卡配置文件
[root@ken network-scripts]# cp ifcfg-eth0 ifcfg-eth1
第二步:編輯網卡配置文件
[root@ken network-scripts]# cat ifcfg-eth1
DEVICE=”eth1″
ONBOOT=yes
NETBOOT=yes
BOOTPROTO=static
TYPE=Ethernet
IPADDR=192.168.182.3
NETMASK=255.255.255.0
第三步:重啟network
[root@ken network-scripts]# systemctl restart network
第四步:重新配置DHCP服務
subnet 192.168.182.0 netmask 255.255.255.0 {
range 192.168.182.10 192.168.182.20;
default-lease-time 600;
max-lease-time 7200;
}
第五步:重啟DHCP服務
[root@ken network-scripts]# systemctl restart dhcpd
第六步:客戶端添加網卡
SCP用法
常用選項:
-r: 復制目錄時使用
-P:大寫的P指定端口
第一種用法:發(fā)送本地文件到遠程服務器
[root@ken ~]# scp a.out 192.168.64.5:/root
a.out 100% 0 0.0KB/s 00:00
第二種用法:拉取遠程服務器文件到本地
[root@ken ~]# scp 192.168.64.5:/root/test2 .
test2 100% 4 0.4KB/s 00:00
[root@ken ~]# ls
test2
第三種: 拉取遠程服務器目錄到本地
[root@ken ~]# scp -r 192.168.64.5:/root/ken1 .
1.txt 100% 0 0.0KB/s 00:00
2.txt 100% 0 0.0KB/s 00:00
3.txt 100% 0 0.0KB/s 00:00
4.txt 100% 0 0.0KB/s 00:00
5.txt 100% 0 0.0KB/s 00:00
[root@ken ~]# ls
ken1 test2
第四種用法:發(fā)送本地目錄到遠程服務器
[root@ken ~]# scp -r ken 192.168.64.5:/root