商務經營與雲端整合上課補充教材


Chapter 2:伺服器網路的設定與檢測
  1. 區域網路與相關的網路參數
    1. 區域網路除了實體的線路需要連接在一起之外, IP 位址需要為同一個區段
    2. 所謂的 IP 位址同一區段 (區域網路) ,假設 192.168.1.0/24 這一個項目:
      • 因為 /24 的關係,所以前面 24 個位元為網域 ID,不可變動 (32 位元來思考)
      • 192.168.1 為網域 ID ,不可變動 (大家都一樣)
      • 最後一個 10 位數可由 0~255,但 0 與 255 (頭尾) 有特殊用途,因此只能使用 1~254 這幾個
      • 所以可用 IP 就是 192.168.1.1 ~ 192.168.1.254 了!
    3. 區域網路裡面的所有電腦,都可以透過網路卡直接廣播溝通,無須透過路由器
    4. 但若傳輸的資料不在區域網路內(例如連上 google),則需要透過路由器 (或閘道器)。
    5. 我們通常不用 IP 直接上網,而是使用主機名稱上網,因此就得需要透過 DNS 伺服器協助我們處理主機名稱轉成 IP 的目的。
    6. 最終需要的網路參數有:
      • IP/Netmask
      • Gateway
      • DNS server
  2. 主機上的網路參數取得方式
    1. 自動取得 (auto):
      學名為 DHCP 服務,類似 IP 分享器後面的 PC 設定值,網路參數是 DHCP 伺服器提供的,而 DHCP 伺服器則直接設定在 IP 分享器。
    2. 手動設定 (manual):
      向 ISP 取得前一小題的網路參數後,自己手動設定在你的系統中。例如崑山科大實驗室、辦公室內的電腦就是這種設定方式。
    3. ADLS 與光世代撥接:
      就是透過附掛在電話線上面的撥接方式來取得網路參數的方法,得要向 ISP 註冊並取得帳號密碼後,才能夠上網的方式。
    4. 第四台纜線 (Cable):
      有線電視台的線路內含光纖的頻段,該頻段可以拿來作為網路上網的方式。與撥接類似,需要向 ISP 申請數據機來上網, 至於網路參數的取得就有點類似 DHCP 了。
  3. IP 位址的設定
    1. 先切換身份成為 root ,才有辦法做管理!
      # su -
      
    2. 觀察目前的連線界面有哪些
      # nmcli connection show
      NAME        UUID                                  TYPE            DEVICE
      virbr0-nic  3b650a23-c58f-4116-9351-195e6895c969  generic         virbr0-nic
      virbr0      08f7cf02-986a-47de-844f-4176b1694288  bridge          virbr0
      eth0        5d4419c4-ca15-468d-96fd-b6a4942d847d  802-3-ethernet  eth0
      
      上面的那個 NAME 的項目,就是實際的網路連線界面,而後面的 DEVICE 則是實體的網卡名稱。
    3. 觀察連線界面的實際設定值
      # nmcli connection show eth0
      connection.id:                          eth0
      connection.uuid:                        5d4419c4-ca15-468d-96fd-b6a4942d847d
      connection.interface-name:              eth0
      connection.type:                        802-3-ethernet
      connection.autoconnect:                 yes
      connection.autoconnect-priority:        0
      connection.timestamp:                   1475580506
      connection.read-only:                   no
      connection.permissions:
      connection.zone:                        --
      connection.master:                      --
      connection.slave-type:                  --
      connection.autoconnect-slaves:          -1 (default)
      connection.secondaries:
      connection.gateway-ping-timeout:        0
      connection.metered:                     不明
      802-3-ethernet.port:                    --
      802-3-ethernet.speed:                   0
      802-3-ethernet.duplex:                  --
      802-3-ethernet.auto-negotiate:          yes
      802-3-ethernet.mac-address:             --
      802-3-ethernet.cloned-mac-address:      --
      802-3-ethernet.mac-address-blacklist:
      802-3-ethernet.mtu:                     auto
      802-3-ethernet.s390-subchannels:
      802-3-ethernet.s390-nettype:            --
      802-3-ethernet.s390-options:
      802-3-ethernet.wake-on-lan:             1 (default)
      802-3-ethernet.wake-on-lan-password:    --
      ipv4.method:                            manual
      ipv4.dns:                               168.95.1.1
      ipv4.dns-search:
      ipv4.addresses:                         172.20.0.100/24
      ipv4.gateway:                           172.20.0.254
      ipv4.routes:
      ipv4.route-metric:                      -1
      ipv4.ignore-auto-routes:                no
      ipv4.ignore-auto-dns:                   no
      ipv4.dhcp-client-id:                    --
      ipv4.dhcp-send-hostname:                yes
      ipv4.dhcp-hostname:                     --
      ipv4.never-default:                     no
      ipv4.may-fail:                          yes
      ipv6.method:                            auto
      ipv6.dns:
      ipv6.dns-search:
      ipv6.addresses:
      ipv6.gateway:                           --
      ipv6.routes:
      ipv6.route-metric:                      -1
      ipv6.ignore-auto-routes:                no
      ipv6.ignore-auto-dns:                   no
      ipv6.never-default:                     no
      ipv6.may-fail:                          yes
      ipv6.ip6-privacy:                       -1(不明)
      ipv6.dhcp-send-hostname:                yes
      ipv6.dhcp-hostname:                     --
      GENERAL.NAME:                           eth0
      GENERAL.UUID:                           5d4419c4-ca15-468d-96fd-b6a4942d847d
      GENERAL.DEVICES:                        eth0
      GENERAL.STATE:                          已啟用
      GENERAL.DEFAULT:                        是
      GENERAL.DEFAULT6:                       否
      GENERAL.VPN:                            否
      GENERAL.ZONE:                           --
      GENERAL.DBUS-PATH:                      /org/freedesktop/NetworkManager/ActiveConnection/0
      GENERAL.CON-PATH:                       /org/freedesktop/NetworkManager/Settings/0
      GENERAL.SPEC-OBJECT:                    /
      GENERAL.MASTER-PATH:                    --
      IP4.ADDRESS[1]:                         172.20.0.100/24
      IP4.GATEWAY:                            172.20.0.254
      IP4.DNS[1]:                             168.95.1.1
      IP6.ADDRESS[1]:                         fe80::5054:ff:fe42:862e/64
      IP6.GATEWAY:
      
      小寫的部份為設定值,大寫的部份為目前實際運作中的情況!
    4. 實際設定 IP 位址參數的方法
      nmcli connection [ modify eth0 ] [ connection.autoconnect yes ] [ ipv4.method manual ]
                       [ ipv4.addresses IP/NETMASK ] [ ipv4.gateway GWIP ] [ ipv4.dns DNSIP ]
      
    5. 練習:
      • 你的內部網路為 10.0.0.*/24 (* 為你的學號尾數)
      • 你的 Gateway 為 10.0.0.254
      • DNS Server IP 使用 120.114.100.1 及 120.114.150.1
    6. 檢測流程:
      • 檢查 IP/netmask 可以使用『 ifconfig 』、『 ip addr show 』、『 nmcli connection show eth0 』
      • 檢查 gateway 可以使用『 route -n 』、『 nmcli connection show eth0 』
      • 檢查你的主機到 gateway 之間的連線,可以使用 ping
      • 檢查 DNS 有沒有運作,可以使用 dig www.google.com
      • 可以使用 ping 168.95.1.1 對中華電信最大的 DNS 伺服器進行連線測試
      • 上述流程每一步都要成功!
  4. 練習 vim 指令
    1. 使用『 vim filename 』去編輯一個檔案內容,或新建一個檔案
    2. 在 vim 的軟體內,使用 i 進入編輯模式
    3. 在編輯模式內,使用 [esc] 回到一般模式
    4. 使用 :w 寫入, :q 離開, :q! 強制不儲存離開
    5. 練習:
      • 變換目錄到 /dev/shm 去
      • 複製 (cp old new) /etc/services 到本目錄下
      • 編輯 services 檔案
      • 第 5 行新增一行『 I am good! Very Good! 』
      • 回到一般模式
      • 儲存
      • 離開 vim
      • 觀察檔案的檔名以及檔案的內容
  5. 主機名稱設定
    1. 每部主機應該都有自己的主機名稱,而這部主機名稱最好能夠有相對應的 IP 才好!
    2. 可以使用 hostnamectl 來進行主機名稱的查詢
    3. 可以使用『 hostnamectl set-hostname 主機名 』來設定你的主機名稱
    4. 若需要讓這個主機名稱與你的 IP 對應,應該要修改 /etc/hosts 這個檔案的內容才行。
    5. 練習:
      • 讓你的主機名稱成為 stationXX.dic.ksu
      • 讓這個主機名稱與你的 IP 達成對應
      • 最後 ping stationXX.dic.ksu 時,會出現相對的 IP 顯示。
Top
HOME