2.ip命令
配置Linux网络属性:ip 命令(1)ip - show / manipulate routing, devices, policy routing and tunnels
ip [OPTIONS]OBJECT{COMMAND| help }OBJECT:={ link | addr | route }
ip link - network device configuration
set dev IFACE
可设置属性:
up and down:激活或禁用指定接口
ifup/ifdown
show [dev IFACE]:指定接口
[up]:仅显示处于激活状态的接口
例1:ip link set eth1 down
例2:ip link show up(2)ip addr { add | del }IFADDR dev STRING[label LABEL]:添加地址时指明网卡别名
[scope {global|link|host}]:指明作用域
global: 全局可用
link: 仅链接可用
host: 本机可用
[broadcast ADDRESS]:指明广播地址
例1: ip addr add 1.1.1.1/24 scope global dev eth1 label eth1:0
例2: ip addr del 1.1.1.1/24 dev eth1 label eth1:0(3)ip address show - look at protocol addresses
[dev DEVICE][label PATTERN][primary and secondary]
例1: ip addr show dev eth1(4)ip addr flush 使用格式同show
ip addr add 172.16.100.100/16 dev eth0 label eth0:0
ip addr del 172.16.100.100/16 dev eth0 label eth0:0
ip addr flush dev eth0 label eth0:0(5)ip route - routing table management
添加路由:ip route add
ip route add TARGET via GW dev IFACE src SOURCE_IPTARGET:
主机路由:IP
网络路由:NETWORK/MASK
ip route add 192.168.0.0/24 via 172.16.0.1
ip route add 192.168.1.13 via 172.16.0.1
添加网关:ip route add default via GW dev IFACE
ip route add default via 172.16.0.1
删除路由:ip route del TARGET
例1: ip route del default via 10.0.7.254
显示路由:ip route show|list
清空路由表:ip route flush [dev IFACE][via PREFIX]
ip route flush dev eth0
1.route命令
路由管理命令
route [-CFvnee]
route [-v][-A family] add [-net|-host] target [netmask Nm][gw Gw][metric N][mss M][window W][irtt I][reject][mod][dyn][reinstate][[dev] If]
route [-v][-A family] del [-net|-host] target [gw Gw][netmask Nm][metric N][[dev] If]
route [-V][--version][-h][--help(1) 选项
-C//显示路由缓存。-F//显示发送信息-v //显示详细的处理信息。-n //不解析名字。-ee //使用更详细的资讯来显示-V//显示版本信息。-net //到一个网络的路由表。-host //到一个主机的路由表。(2) 参数
add //增加路由记录。
del //删除路由记录。
target //目的网络或目的主机。
gw //设置默认网关。gateway 的简写,后续接的是 IP 的数值。
mss //设置TCP的最大区块长度(MSS),单位MB。
window //指定通过路由表的TCP连接的TCP窗口大小。
dev //如果只是要指定由那一块网路卡连线出去,则使用这个设定,后面接 eth0 等。
reject //设置到指定网络为不可达,避免在连接到这个网络的地址时程序过长时间的等待,直接就知道该网络不可达。
例子:1)添加和删除路由
route {add | del }[-net|-host][网域或主机] netmask [mask][gw|dev]增加(add)与删除(del)路由的相关参数:(a)-net :表示后面接的路由为一个网域。(b)-host :表示后面接的为连接到单部主机的路由。(c) netmask :与网域有关,可以设定 netmask 决定网域的大小。(d) gw :gateway 的简写,后续接的是 IP 的数值,与 dev 不同。(e) dev :如果只是要指定由那一块网路卡连线出去,则使用这个设定,后面接 eth0 等。
例1:route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1 dev eth0
例2:route add -net 192.168.0.0/24 gw 172.16.0.1 dev eth0
例3:route add -host 192.168.1.3 gw 172.16.0.1 dev eth0
2)查询路由信息
route -nee(a)-n:不要使用通讯协定或主机名称,直接使用 IP 或 port number。(b)-ee:使用更详细的资讯来显示。
3)添加/删除默认网关路由
route {add | del }default gw {IP-ADDRESS}{INTERFACE-NAME}(a)IP-ADDRESS:用于指定路由器(网关)的IP地址。(b)INTERFACE-NAME:用于指定接口名称,如eth0。
例1:route add default gw 192.168.1.1 eth0
例2:route del default gw 192.168.1.1 eth0
例3: route add -net 0.0.0.0 netmask 0.0.0.0 gw 172.16.0.1
例4: route add default gw 192.168.233.2 dev eth1 metric 994)添加/删除到指定网络的路由规则
route {add | del }-net {NETWORK-ADDRESS} netmask {NETMASK} dev {INTERFACE-NAME}(a)NETWORK-ADDRESS:用于指定网络地址。(b)NETMASK:用于指定子网掩码。(c)INTERFACE-NAME:用于指定接口名称,如eth0。
例1:route add -net 192.168.1.0 netmask 255.255.255.0 dev eth0
例2:route del -net 192.168.1.0 netmask 255.255.255.0 dev eth0
5)添加/删除路由到指定网络为不可达
设置到指定网络为不可达,避免在连接到这个网络的地址时程序过长时间的等待,直接就知道该网络不可达。
route {add | del }-net {NETWORK-ADDRESS} netmask {NETMASK}reject(a)NETWORK-ADDRESS:用于指定网络地址。(b)NETMASK:用于指定子网掩码。
例1:route add -net 10.0.0.0 netmask 255.0.0.0 reject
例2:route del -net 10.0.0.0 netmask 255.0.0.0 reject
更多扩展看-->>Linux基础命令-网络配置和相关命令中的route命令
19.S
1.ss命令
1.ss命令
格式:ss [OPTION]...[FILTER]
netstat通过遍历proc来获取socket信息,ss使用netlink与内核tcp_diag模块通信获取socket信息
选项:
-t: tcp协议相关
-u: udp协议相关
-w: 裸套接字相关
-x:unix sock相关
-l: listen状态的连接
-a: 所有
-n: 数字格式
-p: 相关的程序及PID-e: 扩展的信息
-m:内存用量
-o:计时器信息
FILTER:[ state TCP-STATE][EXPRESSION]TCP的常见状态:
tcp finite state machine:LISTEN: 监听
ESTABLISHED:已建立的连接
FIN_WAIT_1: 等待第一阶段
FIN_WAIT_2: 等待第二阶段
SYN_SENTSYN_RECVCLOSEDEXPRESSION:
dport =
sport =示例:’( dport =:ssh or sport =:ssh )’
常用组合:
-tan,-tanl,-tanlp,-uan
ss -l 显示本地打开的所有端口
ss -pl 显示每个进程具体打开的socket
ss -t -a 显示所有tcp socket
ss -u -a 显示所有的UDP Socekt
ss -o state established '( dport = :ssh or sport = :ssh )' 显示所有已建立的ssh连接
ss -o state established '( dport = :http or sport = :http )' 显示所有已建立的HTTP连接
ss -s 列出当前socket详细信息