Linux:Linux常用网络指令
来源:互联网 发布:各国历年gdp数据 编辑:程序博客网 时间:2024/05/22 05:32
http://blog.csdn.net/pipisorry/article/details/72123888
网络参数设定使用的指令
- ifconfig :查询、设定网络卡与 IP 网域等相关参数;
- ifup, ifdown:这两个档案是 script,透过更简单的方式来启动网络接口;
- route :查询、设定路由表 (route table)
- ip :复合式的指令, 可以直接修改上述提到的功能;
手动/自动设定与启动/关闭 IP 参数: ifconfig, ifup, ifdown
ifconfig
ifconfig 主要是可以手动的启动、观察与修改网络接口的相关参数,可以修改的参数很多啊,包括 IP 参数以及 MTU 等等都可以修改,他的语法如下:
[root@www ~]# ifconfig {interface} {up|down} <== 观察与启动接口[root@www ~]# ifconfig interface {options} <== 设定与修改接口选项与参数:interface:网络卡接口代号,包括 eth0, eth1, ppp0 等等options :可以接的参数,包括如下: up, down :启动 (up) 或关闭 (down) 该网络接口(不涉及任何参数) mtu :可以设定不同的 MTU 数值,例如 mtu 1500 (单位为 byte) netmask :就是子屏蔽网络; broadcast:就是广播地址啊!
各项数据
- eth0:就是网络卡的代号,也有 lo 这个 loopback ;
- HWaddr:就是网络卡的硬件地址,俗称的 MAC 是也;
- inet addr:IPv4 的 IP 地址,后续的 Bcast, Mask 分别代表的是 Broadcast 与 netmask 喔!
- inet6 addr:是 IPv6 的版本的 IP ,我们没有使用,所以略过;
- MTU:就是第二章谈到的 MTU 啊!
- RX:那一行代表的是网络由启动到目前为止的封包接收情况, packets 代表封包数、errors 代表封包发生错误的数量、 dropped 代表封包由于有问题而遭丢弃的数量等等
- TX:与 RX 相反,为网络由启动到目前为止的传送情况;
- collisions:代表封包碰撞的情况,如果发生太多次, 表示你的网络状况不太好;
- txqueuelen:代表用来传输数据的缓冲区的储存长度;
- RX bytes, TX bytes:总接收、发送字节总量
皮皮blog
网络侦错与观察指令
使用测试软件来追踪可能的错误原因,而很多的网络侦测指令其实在 Linux 里头已经都预设存在了,只要你好好的学一学基本的侦测指令。
两部主机两点沟通: ping
# ping [选项与参数] IP选项与参数:-c 数值:后面接的是执行 ping 的次数,例如 -c 5 ;-n :在输出数据时不进行 IP 与主机名的反查,直接使用 IP 输出(速度较快);-s 数值:发送出去的 ICMP 封包大小,预设为 56bytes,不过你可以放大此一数值;-t 数值:TTL 的数值,预设是 255,每经过一个节点就会少一;-W 数值:等待响应对方主机的秒数。-M [do|dont] :主要在侦测网络的 MTU 数值大小,两个常见的项目是: do :代表传送一个 DF (Don't Fragment) 旗标,让封包不能重新拆包与打包; dont:代表不要传送 DF 旗标,表示封包可以在其他主机上拆包与打包
察看本机的网络联机与后门: netstat
# netstat -[rn] <==与路由有关的参数# netstat -[antulpc] <==与网络接口有关的参数选项与参数:与路由 (route) 有关的参数说明:-r :列出路由表(route table),功能如同 route 这个指令;-n :不使用主机名与服务名称,使用 IP 与 port number ,如同 route -n 与网络接口有关的参数:-a :列出所有的联机状态,包括 tcp/udp/unix socket 等;-t :仅列出 TCP 封包的联机;-u :仅列出 UDP 封包的联机;-l :仅列出有在 Listen (监听) 的服务之网络状态;-p :列出 PID 与 Program 的檔名;-c :可以设定几秒钟后自动更新一次,例如 -c 5 每五秒更新一次网络状态的显示;
范例一:列出目前的路由表状态,且以 IP 及 port number 显示:# netstat -rn
# 其实这个参数就跟 route -n 一模一样,这不是 netstat 的主要功能!# 范例二:列出目前的所有网络联机状态,使用 IP 与 port number
# netstat -anActive Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 127.0.0.1:5939 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
tcp 0 52 192.168.1.100:22 192.168.1.101:1937 ESTABLISHED
tcp 0 0 :::22 :::* LISTEN
...
网络联机状态的输出部分
- Proto:该联机的封包协议,主要为 TCP/UDP 等封包;
- Recv-Q:非由用户程序连接所复制而来的总 bytes 数;
- Send-Q:由远程主机所传送而来,但不具有 ACK 标志的总 bytes 数, 意指主动联机 SYN 或其他标志的封包所占的 bytes 数;
- Local Address:本地端的地址,可以是 IP (-n 参数存在时), 也可以是完整的主机名。使用的格式就是『 IP:port 』只是 IP 的格式有 IPv4 及 IPv6 的差异。
- 如上所示,在 port 22 的接口中,使用的 :::22 就是针对 IPv6 的显示,事实上他就相同于 0.0.0.0:22 的意思。 至于 port 25 仅针对 lo 接口开放,意指 Internet 基本上是无法连接到我本机的 25 埠口啦!
- Foreign Address:远程的主机 IP 与 port number
stat:状态栏,主要的状态含有:
- ESTABLISED:已建立联机的状态;
- SYN_SENT:发出主动联机 (SYN 标志) 的联机封包;
- SYN_RECV:接收到一个要求联机的主动联机封包;
- FIN_WAIT1:该插槽服务(socket)已中断,该联机正在断线当中;
- FIN_WAIT2:该联机已挂断,但正在等待对方主机响应断线确认的封包;
- TIME_WAIT:该联机已挂断,但 socket 还在网络上等待结束;
- LISTEN:通常用在服务的监听 port !可使用『 -l 』参数查阅。
# 范例三:秀出目前已经启动的网络服务
# netstat -tulnp
# 范例四:观察本机上头所有的网络联机状态
[root@www ~]# netstat -atunp
列出在监听的网络服务:
# netstat -tunlctive Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN
...
上面说明了我的主机至少有启动 port 111, 22, 25 等,而且观察各联机接口,可发现 25 为 TCP 埠口,但只针对 lo 内部循环测试网络提供服务,因特网是连不到该埠口的。至于 port 22 则有提供因特网的联机功能。
列出已联机的网络联机状态:
# netstat -tun
Active Internet connections (w/o servers)Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 52 192.168.1.100:22 192.168.1.101:2162 ESTABLISHED
从上面的数据来看,我的本地端服务器 (Local Address, 192.168.1.100) 目前仅有一条已建立的联机,那就是与 192.168.1.101 那部主机连接的联机,并且联机方向是由对方连接到我主机的 port 22 来取用我服务器的服务吶!
删除已建立或在监听当中的联机:
如果想要将已经建立,或者是正在监听当中的网络服务关闭的话,最简单的方法当然就是找出该联机的 PID, 然后将他 kill 掉即可啊!
例如下面的范例:
# netstat -tunpActive Internet connections (w/o servers)Proto Recv-Q Send-Q Local Address Foreign Address State PID/P nametcp 0 52 192.168.1.100:22 192.168.1.101:2162 ESTABLISHED 1342/0
如上面的范例,我们可以找出来该联机是由 sshd 这个程序来启用的,并且他的 PID 是 1342, 希望你不要心急的用 killall 这个指令,否则容易删错人 (因为你的主机里面可能会有多个 sshd 存在), 应该要使用 kill 这个指令!
# kill -9 1342
侦测主机名与 IP 对应: host, nslookup
...
远程联机指令与实时通讯软件
终端机与 BBS 联机: telnet
FTP 联机软件: ftp, lftp
图形接口的实时通讯软件: pidgin (gaim 的延伸)
皮皮blog
文字接口网页浏览
文字浏览器:links
文字接口下载器: wget
如果说 links 是在进行网页的『浏览』,那么 wget 就是在进行『网页数据的取得』。
我们知道可以使用 lftp 来下载数据,但如果想要用浏览器来下载呢?那就利用 wget 吧!
[root@www ~]# wget [option] [网址]选项与参数:若想要联机的网站有提供账号与密码的保护时,可以利用这两个参数来输入喔!--http-user=usrname--http-password=password--quiet :不要显示 wget 在抓取数据时候的显示讯息
lz常用示例wget linkurl -P /usr/local
封包撷取功能
文字接口封包撷取器: tcpdump
图形接口封包撷取器: wireshark
任意启动 TCP/UDP 封包的埠口联机: nc, netcat
皮皮blog
linux系统网络问题及解决
Destination Host Unreachable / No route to host
pika:~$ping 192.168.31.191
PING 192.168.31.191 (192.168.31.191) 56(84) bytes of data.
From 192.168.31.98 icmp_seq=1 Destination Host Unreachable
说明不在同一局域网内,虽然ip前3位相同!!!
换个wifi试试就可以了。
或者No route to host
解决方案是:关闭防火墙
service iptables stop
[常见的网络命令查看当前网络状态]
ubuntu wifi重新配置
[Existing Linux Wireless drivers]
使用网线或者手机网连接上网,可能一点问题都没有, 但是如果想使用 wifi 连接上网可能会遇到问题,如无线网络被禁用,wifi 指示灯没亮,一连接隐藏的wifi或者某个wifi无线网卡就不能用了device not ready等等。
解决1:命令行: sudo apt-get install -y wicd (亲测无效)解决2:
首先要查看本机的无线网卡型号
lspci -v
...
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
Subsystem: Lenovo RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
Flags: bus master, fast devsel, latency 0, IRQ 124
I/O ports at 3000 [size=256]
Memory at d1204000 (64-bit, non-prefetchable) [size=4K]
Memory at d1200000 (64-bit, non-prefetchable) [size=16K]
Capabilities: <access denied>
Kernel driver in use: r8168
Kernel modules: r8168
03:00.0 Network controller: Intel Corporation Intel Dual Band Wireless-AC 3165 Plus Bluetooth (rev 99)
Subsystem: Intel Corporation Intel Dual Band Wireless-AC 3165 Plus Bluetooth
Flags: bus master, fast devsel, latency 0, IRQ 129
Memory at d1100000 (64-bit, non-prefetchable) [size=8K]
Capabilities: <access denied>
Kernel driver in use: iwlwifi
Kernel modules: iwlwifi, wl
Network controller是无线网卡信息,且型号为Intel Corporation Intel Dual Band Wireless-AC 3165 Plus Bluetooth (rev 99).
或者通过调试看哪个网卡驱动坏了dmesg | grep iwl,再下载对应的驱动安装。
解决:先驱动下载:[https://wireless.wiki.kernel.org/en/users/Drivers/iwlwifi]
解压后运行# cp iwlwifi-*.ucode /lib/firmware
[https://wireless.wiki.kernel.org/en/users/Drivers/iwlwifi]
和下面方法是一样的:Intel AC-3160 Firmware Update fixes Bluetooth:[http://ubuntuforums.org/showthread.php?t=2214075][Intel AC-3160 Firmware Update fixes Bluetooth]
或者(lz未测试)通过tar文件安装驱动[Ubuntu 10.04 安装网卡驱动][Ubuntu 12.04 wireless networks : devices not ready (firmware missing)解决办法]
ps:
realtek网卡
sudo apt-get install r8168-dkms
[Realtek ethernet driver error ubuntu 16.04]
[Ubuntu 16.04无线网卡RTL8723BE频繁掉线及信号不足解决办法]
Broadcom网卡
sudo apt-get install b43-fwcutter firmware-b43-installer
[install-broadcom-b43-legacy-wireless-driver-in-ubuntu]
[Ubuntu 14.04 Broadcom B43网卡失效的解决办法(附解决过程) ]
from: http://blog.csdn.net/pipisorry/article/details/72123888
ref: [鸟哥的Linux私房菜:服务器架设篇]
- Linux常用网络指令
- Linux常用网络指令
- Linux常用网络指令
- Linux:Linux常用网络指令
- 常用Linux指令--网络同步
- 网络篇二---linux常用网络指令
- 2.Linux 常用网络指令介绍
- 第五章、 Linux 常用网络指令
- 第五章、 Linux 常用网络指令
- 第5章 Linux常用网络指令
- 第5章 Linux 常用网络指令
- 44.Linux 中常用的网络指令
- 【Linux】Linux常用指令
- 【linux】linux常用指令
- linux指令 网络部分
- linux网络相关指令
- linux常用指令集
- linux 常用指令
- 基于stm32cube的stm32系列不定长度串口接收(IDLE接收)
- 行为型模式之解释器模式(Interpreter)
- TI C2000 MCU Boot过程分析-以TMS320F28069为例
- 170514 逆向-IDC脚本一例
- 一、Java多线程和高并发
- Linux:Linux常用网络指令
- Pycharm 亲测可用的在线注册
- Mybatis 接口编程中dao 层接口没有注解和<bean> 为什么能被实例化为bean??
- CKEditor文件上传
- iOS 免越狱修改微信运动步数
- StringUtils 方法总结
- 在ASP.NET MVC 中获取当前URL、controller、action
- 痛与教训,我所亲历的3个失败游戏创业公司
- [李景山php] 深入理解PHP内核[读书笔记]--第四章:函数的实现 --函数间的转换