linux網絡配置文件及相關命令

##ifcfg:ifconfig,route,netstat

##iprout:ip,ss,nmcli


 1)#ifconfig 常用顯示或更改網絡配置

-a 顯示所有接口信息,包括未激活接口

#ifconfig IFACE IP/MASK [up]  立即生效

#ifconfig add addr/prefixlen  添加IPv6地址


    更改IP地址:

]# ifconfig eth0 202.204.235.1/24

    查看指定網卡信息

]# ifconfig eth0


 2)#route 路由查看及管理

-n 不解析主機名,以數字格式顯示

-----------------------------------------------------------------------

Destination   Gateway    Genmask     Flags  Metric  Ref   Use  Iface

10.1.0.0      0.0.0.0   255.255.0.0    U      0      0     0    eth0

-----------------------------------------------------------------------

/Destination 目標  The destination network or destination host. 

          目標網絡或目標主機。   0.0.0.0表示默認網關


/Gateway 網關  The gateway address or '*' if none set.

          網關地址,如果沒有就顯示星號。


/Genmask 網絡掩碼

          若爲0.0.0.0表示該主機在本地網絡內 直連路由

/Flags:標誌,代表的意義如下:                        

         o U 該路由已啓動;                       

         o H 目標是一部主機 (IP) 而非網域;               

         o G 需要透過外部的主機 (gateway) 來轉遞封包;           

         o R 使用動態路由時,恢復路由資訊的旗標;                       

         o D 已經由服務或轉 port 功能設定爲動態路由                      

         o M 路由已經被修改了;       

         o ! 這個路由將不會被接受(用來抵擋不安全的網域!)

         o A (installed by addrconf)

         o C (cache entry)

/Metric 距離、跳數。暫無用。

/Ref   不用管,恆爲0。

          Number of references to this route. (Not used in the Linux kernel.)

/Use    該路由被使用的次數,可以粗略估計通向指定網絡地址的網絡流量。

/Iface 接口,即eth0,對應本機的接口


route add [-net|-host] target [netmask NM] [[dev]if]  添加/刪除路由條目


    可手動添加也可安裝quagga包藉助於RIP、OSPF、BGP等協議自動生成 使用vtysh配置

]#route add -net 10.0.0.0/8 gw 192.168.10.1添加路由條目 網絡
]#route add default gw 192.168.0.1更改默認網關
         刪除:
]#route del -host 10.1.252.54



 3)netstat 命令用於顯示各種網絡相關信息,網絡連接,路由表,接口狀態,連接等。

        -r 顯示路由信息,路由表

        -n 不解析主機名,能顯示數字的全部轉化成數字

        -t (tcp)僅顯示tcp相關選項

        -u (udp)僅顯示udp相關選項

        -l 僅列出有在 Listen (監聽) 的服務狀態

        -s 按各個協議進行統計

        -p 顯示建立相關鏈接的程序名

        -e 顯示擴展信息,例如uid等

        -c 每隔一個固定時間,執行該netstat命令。

        -i 所有接口信息

        -I 指定接口    -Ieth0 或 -I=eth0

常用組合:-tan, -uan, -tnl, -unl


netstat -rn 類似 route -n


 4)ifup/ifdown DEVICE    啓動或禁用網卡



#hostname [HOSTNAME] 查看或修改主機名  立即生效,但重啓不保留


#hostnamectl 顯示主機名等信息 內核、架構、底層等

set-hostname 設置主機名,不會立即生效,重啓永久有效


Cent OS 7 一般使用hostnamectl 修改主機名

配置文件/etc/hostname 默認沒有


=====

##iprout家族:  版本與內核相同


1)ip    show / manipulate routing, devices, policy routing and tunnels

OBJECT [ link | addr | route ]

#ip link set|show DEV 修改設備屬性

        up/down

multicast on /multicast off:啓用或禁用多播功能

name NAME:重命名接口 需先停用接口

mtu NUM:設置MTU大小 默認1500

  

#ip netns PID:ns表namespace,用於將接口移動到指定的網絡名稱空間,構建虛擬網絡

list:列出所有的netns

add NAME:創建指定netns

del NAME:刪除指定netns

exec NAME COMMAND:在指定netns中運行命令

]#ip netns add mynet
]#ip link set eth1 netns mynet
]#ip link exec mynet ip link show

#ip address [OPTION] dev IFACE :地址管理

add IFADDR dev IFACE label LABEL:添加地址 ifconfig只顯示一個主地址

]#ip addr add 202.204.235.5 dev eth1
]#ip addr show

[label NAME] 添加別名 ifconfig可顯示

]#ip addr add 10.1.54.23 dev eth1 label eth1:0

[broadcast ADDRESS]:廣播地址 會自動計算得到 省略

[scope SCOPE_VALUE]:設備的作用域

global 全局可用網卡地址在內核中,可連接eth0訪問eth1的地址 

link  接口可用  與網卡綁定

host  主機可用

del IFADDR dev IFACE:刪除地址

show/list:查看地址

flush:清空接口所有地址

#ip route :routing table management 路由表管理 

add TYPE PREFIX via GW [dev IFACE] [src SOURCE_IP]添加新路由

]#ip route add 172.18.20.0/16 via 202.204.235.1 dev eth1 src 10.1.54.23
]#ip route sdd default via 10.1.0.1


change

replace

delete 刪除路由條目

]#ip route delet 172.18.20.0/16


show 顯示路由信息

flush ARG 清空路由表

get 顯示某個單條路由信息

    2)ss [options] [FILTER] 類似netstat  用於取代netstat 性能更優

     [option]:

     -t TCP相關連接

     -u UDP相關連接

     -w 裸套接字相關連接

     -l 監聽狀態連接

     -a 所有狀態

     -n 數字格式

     -p 相關程序及PID

     -e 擴展格式信息

     -m 內存用量

     -o 計時器信息

[FILTER]:=[ stat TCP-STATE ] [ EXPRESSION ]

[ TCP-STATE ] TCP FSM

LISTEN:監聽狀態

ESTABLISHET:已建立的連接


FIN_WAIT_1:

FIN_WAIT_2:

SYN_SENT:

SYN_RECV:

CLOSED:

[ EXPRESSION ]:

dport = :22

sport =

]#ss -tan '( sport = :22 or dport = :22 )'
]#ss -tan state ESTABLISHED





======配置文件

    IP/NETMASK/GW/DNS等屬性配置文件:

/etc/sysconfig/network-scripts/ifcfg-IFACE

路由的相關配置文件:

/etc/sysconfig/network-scripts/route-IFACE

            兩種配置方式:不可混用

1.每行一個路由條目

TARGET via GW

                10.0.0.0/8 via 202.204.235.1

2.每3行一個路由條目

ADDRESS#=TARGET

NETMASK#=MASK

GATEWAY#=GW


可用 vim 或專用命令修改:

CentOS 6 setup(system-config-network)

CentOS 7 nmtui


ifcfg-IFACE

NAME: 名稱

* - DEVICE:對應設備

ONBOOT:是否開機啓動

UUID: 此設備唯一標識

IPV6INIT: 是否啓用IPv6

- BOOTPROTO:

                激活次接口時使用哪種協議,重用 hdcp、bootp、static、none

TYPE: 接口類型,常見 Ethernet、Bridge

* DNS: 第一DNS服務器指向

DNS2: 備用

DOMAIN:當前主機所在域 DNS搜索域  ping www   自動補全的域名

DEFROUTE: 是否爲默認路由所使用的接口

* GATEWAY: 默認網關

* IPADDR: IP地址

* PREFIX: 網絡位長度

* NETMASK: 子網掩碼  CentOS 7支持PREFIX=# 以長度指明子網掩碼

USERCTl: 是否允許普通用戶控制此設備

PEERDNS: 如果BOOTPROTO爲dhcp,是否允許dhcp server分配的dns覆蓋本地設置

NM_CONTROLLED: 是否使用NetworkManager服務控制接口

最簡配置  靜態 *      動態 -


]# cat /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

TYPE=Ethernet

UUID=97ce546f-f7e3-4115-af8d-a215ab8aa7e0

ONBOOT=yes

NM_CONTROLLED=no

BOOTPROTO=none

IPADDR=10.1.252.33

NETMASK=255.255.0.0

GATEWAY=10.1.0.1

DEFROUTE=yes

IPV4_FAILURE_FATAL=yes

IPV6INIT=no

NAME="System eth0"

HWADDR=00:0C:29:F2:0D:9A

PEERDNS=yes

PEERROUTES=yes











發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章