這是網絡程序設計課程的第一次作業的博客,由於還是小白,分享的內容都是比較基礎的東西,希望看到的各位同學可以提出指導意見,必將虛心聽取。
這次分享的內容是網絡配置工具iproute2和net-tools的原理和基本使用方法,由於之前未接觸過這方面的東西,因此都是對基本命令進行驗證並給出自己的一點思考。
一、原理
網絡配置工具是用來檢測網絡狀態及配置相關信息的輔助性工具,iproute2是linux下管理控制TCP/IP網絡和流量控制的新一代工具包,出現目的是替代老工具鏈net-tools,查閱一些資料獲悉,net-tools是通過procfs(/proc)和ioctl系統調用去訪問和改變內核網絡配置,而iproute2通過netlink套接字接口與內核通訊,在多個任務的情況下,iproute的效率會更高,這兩個與內核通信的不同方式便是這兩個工具鏈的最本質區別。
二、基本使用
1、ip addr show(ip a)和ifconfig -a的作用一樣,可以查看網卡設備
ip a,可以看到有兩個網卡,ens33這個網卡的up顯示網絡連接正常
2、啟用網絡設備 sudo ip link set up ens33
3、配置臨時ip
(1)iproute2配置臨時sudo ip addr add 192.168.1.100/24 dev ens33,這種方式添加的臨時的,設備重啟后會被釋放
(2)net-tools的方式:需要加別名才不會覆蓋原來的ip地址,否則是會覆蓋的
4、刪除臨時ip
(1)sudo ip addr del 192.168.1.100/24 dev ens33
(2)sudo ifconfig ens33:0 192.168.1.101/24 down
5、修改mac地址(也是臨時的)
不常用,實際上修改的也不是物理地址,而是虛擬的物理地址
sudo ip link set dev ens33 address 00:ff:ff:ff:ff:ff
6、查看路由
(1)ip route show(ip r) 可以看到該路由器的默認路由和兩條默認路由
(2)route -n 0.0.0.0是指任何ip目的地址,都需要先轉發到默認路由
7、設置默認路由
(1)刪除默認路由后,沒有默認路由則不能上網
(2)sudo ip route add default via 192.168.8.1 dev ens33
設置了默認路由后才能聯網,注意默認路由不能隨便設置
若使用不正確的默認路由,則會全部丟包
(3)net-tools的方法設置路由
8、查看ARP信息
(1)ip neigh (ip n)
(2)arp -an
9、查看本地TCP監聽
(1)ss -ltp
可以看到上面本地啟動了兩個連接的服務,分別是ssh和ipp協議,后面的兩行是一樣的,不過他們使用的是ipv6
(2)netstat -tnlp,加了n之后會把ssh和ipp協議轉成端口號
(3)這兩個工具的主要區別就是在這里,iproute2使用的ss連接,net-tools使用的是原始的
10、查看所有的tcp連接
(1)ss -tn
(2)netstat -nt
三、總結
這是第一次寫博客,也是第一次學網絡相關命令,由於基礎還不好,整個學習過程中花了很多時間去研究相關命令出現的錯誤。不過還是學到很多東西,對計算機網絡上面的理論知識有了更加深刻的理解,以前覺得那些知識只是理論上這個樣子,離我們很遠,經過這次的學習,我知道了計算機學科作為應用學科的意義,我們的理論知識就是來自於實際,理論怎樣描述的,計算機實際上就是怎樣工作。希望通過自己的堅持學習,能夠從小白變成一個真正的技術人!