Linux基礎之網絡

Linux基礎之網絡

1、網絡配置

一、ifconfig命令

ifconfig顯示或設置網絡設備,相似Windows下的ipconfig。算法

[root@localhost ~]# ifconfig
eth0   Link encap:Ethernet  HWaddr 00:0C:29:5E:8B:43  
          inet addr:192.168.93.128  Bcast:192.168.93.255 
          Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe5e:8b43/64 Scope:Link

二、修改網卡名稱

eth(Ethernet的縮寫)新安裝的虛擬機爲eth0,爲何原來的eth0會變成eth1?apache

不少Linux distribution使用udev動態管理設備文件,並根據設備的信息對其進行持久化命名。vim

udev會在系統引導的過程當中識別網卡,將mac地址和網卡名稱對應起來記錄在udev的規則腳本中。而對於新的虛擬機,會自動爲虛擬機的網卡生成MAC地址,當你克隆或者重裝虛擬機軟件時,因爲你使用的是之前系統虛擬硬盤的信息,而該系統中已經有eth0的信息,對於這個新的網卡,udev會自動將其命名爲eth1 (累加的原則),因此在你的系統啓動後,你使用ifconfig看到的網卡名爲eth1。bash

[root@localhost ~]# vim /etc/udev/rules.d/70-persistent-net.rules
# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:0f:fe:1a", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x8086:0x100f (e1000)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:5e:8b:43", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

如何把名字改回eth0?服務器

udev記錄網絡規則的腳本爲:/etc/udev/rules.d/70-persistent-net.rules。網絡

打開該文件,這時你會發現,裏面有eth0,eth1 這兩個網卡的信息,但實際上你ifconfig時只能發現eth1這一個網卡的信息,這時由於eth0根本就不存在。將其中eth0的信息刪掉,並將eth1這行信息中的設備名改成eth0,重啓系統,你看到的網卡就是eth0了,或者刪掉其中全部的信息重啓系統udev會幫你發現新的設備的。dom

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
[root@localhost ~]# service network restart

也等於:service network stop && service network start。
網卡配置文件:ssh

vim /etc/sysconfig/network-scripts/ifcfg-eth0

三、虛擬機的幾種鏈接方式

1.NAT

NAT即爲網絡地址轉換,一般它的名稱爲VMnet8,經過nat的鏈接方式能夠使得虛擬機和真實機的網卡在不一樣的網段中,從而實現聯網。ide

2.bridge

bridge即爲橋接,一般它的名稱爲VMnet0,使用橋接的方式使得本身的虛擬機和本身的真實機網卡在同一個網段,從而實現聯網。工具

3.Host-only

host-only即爲僅主機,一般它的名稱是VMnet1,使用host-only的方式是不能和外界通訊的,只可以和本機的物理網卡通訊。

修改網絡連接方式後,記得執行如下命令:

[root@localhost ~]# service network restart/status/start/stop

2、網絡操做

一、經過主機名查看ip

經過主機名查看IP使用命令爲:host。

命令格式:host 主機名

示例:

[root@localhost ~]#host www.baidu.com

二、遠程管理

1.遠程拷貝

遠程拷貝使用的命令爲:scp。

命令格式:scp –r /home/demo root@服務器IP:/root

將本地的demo目錄拷貝到服務器IP的/root目錄下。

2.遠程登陸

遠程登陸使用的命令爲:ssh。

命令格式:ssh  用戶名@服務器IP

從本機中登陸遠程服務器。
示例:
將本地的/root目錄下的erlang-solutions-1.0-1.noarch.rpm拷貝到192.168.93.129的/root目錄下。

[root@localhost ~]# scp /root/erlang-solutions-1.0-1.noarch.rpm root@192.168.93.129:/root

從當前虛擬機(61)中ssh到192.168.80.62中,建立一個文件,查看;退出後再次查看。

[root@localhost ~]#ssh  root@192.168.80.62
[root@localhost ~]#touch  61dcyy
[root@localhost ~]#ls
[root@localhost ~]#logout
[root@localhost ~]#ls

3.SSH遠程免密登陸

在服務器上每次ssh別的服務器都須要輸入密碼,若是解決這種麻煩的操做?

SSH最經常使用的Linux遠程登陸工具。

免密碼登陸設置(在集羣管理等場景會常常使用到):

RSA:非對稱加密算法,祕鑰對分爲公鑰、私鑰,對公鑰加密的內容,只有擁有私鑰者纔可解密。

免密碼操做

具體實現方法,客戶端執行生成公鑰/私鑰對(70)  #70是虛擬機的IP地址。

ssh-keygen

將公鑰拷貝到服務器端(71)

ssh-copy-id  <username>@<server>
[root@localhost ~]#ssh  root@192.168.80.71

示例:

#生成祕鑰
[root@hadoopFD ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
/root/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
1e:d3:25:9d:83:56:ba:c2:20:35:d4:b6:42:4e:92:fe root@hadoopFD
The key's randomart image is:
+--[ RSA 2048]----+
|     o+.    .    |
|    o.o.o  = .   |
|   ..=.. .= =    |
|    ..oo.o + .   |
|     . .S o      |
|      E. +       |
|        .        |
|                 |
|                 |
+-----------------+
#拷貝祕鑰
[root@hadoopFD ~]# ssh-copy-id root@192.168.75.150
root@192.168.75.150's password: 
Now try logging into the machine, with "ssh 'root@192.168.75.150'", and check in:

  .ssh/authorized_keys

to make sure we haven't added extra keys that you weren't expecting.
#遠程登陸
[root@hadoopFD ~]# ssh 192.168.75.150
Last login: Fri May 25 04:09:14 2018 from 192.168.75.10
#免密登陸成功
[root@hadoop ~]#

圖片詳解:

下面重點說一下,這段話:

這是拷貝以後的正常提示內容,不是什麼錯誤信息,我把漢語意思寫上了。曾經有人問我這段話是什麼錯誤,我很無語啊!

三、網絡下載

網絡下載使用的命令爲:wget。

命令格式:wget [參數] [URL地址]

用於從網絡上下載資源,沒有指定目錄,下載資源默認存儲到當前目錄。

–支持斷點下載功能

–同時支持FTP和HTTP下載方式

–支持代理服務器

示例:

#使用wget下載單個文件
wget http://www.tedu.cn
#使用wget -O下載並以不一樣的文件名保存
wget -O newname.new  http://www.tedu.cn
#使用wget --limit-rate限速下載(單位,byte/秒)
wget --limit-rate=300k  http://mirrors.hust.edu.cn/apache/httpd/httpd-2.2.34.tar.bz2
#使用wget -c斷點續傳
wget -c http://mirrors.hust.edu.cn/apache/httpd/httpd-2.4.25.tar.bz2
#使用wget -b後臺下載
wget -b http://mirrors.hust.edu.cn/apache//httpd/mod_fcgid/mod_fcgid-2.3.9.tar.gz
wget  http://mirrors.hust.edu.cn/apache//httpd/mod_fcgid/mod_fcgid-2.3.9.tar.gz
#使用wget -i下載多個文件
wget -i urlfile.txt

上一篇:Linux基礎之文件系統

下一篇:Linux基礎之進程

相關文章
相關標籤/搜索