网络入门(一)
笔者作为一个文字的搬运者,也是一个小白用户,因为老熬夜记忆力很是糟糕,一直靠别人笔记过活。这是笔者整理的在Linux中与上网有关的一些配置文件和小命令。
同样,只是笔迹,没有教学,怕误人子弟。见谅。
LINUX中于网络相关的配置文件
笔者作为一个文字的搬运者,也是一个小白用户,因为老熬夜记忆力很是糟糕,一直靠别人笔记过活。这是笔者整理的在Linux中与上网有关的一些配置文件和小命令。
一、与网卡名相关的配置文件
centos5:
centos5在/etc/modprobe.conf文件中是使用别名定义的网卡名
alias eth0 e1000
可以在此处修改。
centos6:
centos6中的网卡名默认是eth0,当新增删除网卡的时候网卡名会发生变化,可能会被顶替
centos6中可以修改/etc/udev/rules.d/70-presistent-net.rules文件中
DELL公司电脑可能会在BIOS中启用bisodevname的软件会把网卡名命名成
主板集成网卡会命名成em1 em2 。。。
PCI类型网卡会命名成pYpX Y:表示插槽,X:表示端口,第几个接口
永久修改,修改配置文件:
默认是eth0 eth1 ....
编辑/etc/udev/rules.d/70-persistent-net.rules文件中的网卡信息,来修改网卡名
重启计算机 或者 卸载网卡驱动再加载网卡驱动。modprobe -r e1000 ; modprobe e1000
临时修改,利用命令修改:
先禁用网卡,在修改网卡名
ip link set eth0 down
ip link eth0 name Newname
centos78:
centos78中的网卡名是基于硬件、设备拓扑和设备类型命令。
systemd对网卡的命名:
1. 如果Firmware或BIOS为主板上集成的设备提供的索引信息可用,且可预测则根据此索引进行命名,如:eno1
2. 如果Firmware或BIOS为PCI-E扩展槽所提供的索引信息可用,且可预测,则根据此索引进行命名,如:ens1
3. 如果硬件接口的物理位置信息可用,则根据此信息命名,如:enp2s0
4. 如果用户显式启动,也可根据MAC地址进行命名,如:enx2387a1dc56
5. 上述均不可用时,则使用传统命名机制
使用传统命名方法:
修改/etc/default/grub中
GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"
为grub2生成其配置文件
gurb2-mkconfig /boot/gurb2/gurb.cfg
二、与IP/NETMASK/GATEWAY/DNS相关配置文件
centos5678通用方法
编辑/etc/sysconfig/network-scripts/ifcfg-eth0文件,来修改IP地址
MACADDR=11:22:33:44:55:66 临时需改MAC地址
DEVICE=NET_NAME 指定网卡名
NAME=NET_NAME 指定网卡名
BOOTPROTO=static 指定IP获取类型,none dhcp static,如果为DHCP就会自动从dhcp服务其上获取IPNEMASTDNSGATEWAY等相关信息
IPADDR=10.0.0.8 指定IP地址
NETMASK=255.255.255.0 指定子网掩码
PREFIX=24 指定掩码长度,CIDR的写法
GATEWAY=10.0.0.1 指定默认网关,用于跨网段通信
DNS1=222.222.222.222 指定默认DNS
DNS2= 指定备用DNS
ONBOOT=yes 开机自启动
MOMAIN=haha.com 自动补充搜索域名
如果想要在一个网卡上设置多个IP地址,网卡别名需要静态指定,不能动态获取。
同时这个配置文件名需要时ifcfg-eth#:#,对应的DEVICE和NAME中需要对应的改成eth#:#
图形管理工具:
centos56:
setup
system-config-network-tui
centos78:
nmtui
nmtui-connect
nmtui-edit
nmtui-hostname
三、与主机名相关的配置文件
centos6:
编辑/etc/sysconfig/network文件,来修改主机名
hostname命令可以临时修改主机名
centos78:
编辑/etc/hostname文件,来修改主机名
hostname命令可以临时修改主机名
hostnamectl set-hostname HOSTNAME 此命令会立即生效,同时会修改配置文件
备注:如果/etc/hostname文件不存在,主机名会默认改成localhost.localdomain
四、与路由相关的配置文件
需要手工创建:
保存再/etc/sysconfig/nework-scripts/route-IFACE route-固定格式 IFCAE用对等的网卡名替换
两种写法:
第一种:
10.0.0.8/8 via 172.16.0.1
第二种:
ADDRESS0=10.0.0.8
NETMASK0=255.0.0.0
GATEWAY0=172.16.0.1
ADDRESS1=10.0.0.8
NETMASK1=255.0.0.0
GATEWAY1=172.16.0.1
等等有几条需要写几段
五、与配置IP地址等相关的小命令
ifconfig命令
ifconfig 显示活动网卡信息
ifconfig DEVICE 显示指定网卡的网卡信息
ifconfig DEVICE up|down 启用禁用指定网卡
ifconfig DEVICE IPADDR netmask NETMASK 给指定的网卡设定IP和NETMASK
ifconfig DEVICE 0.0.0.0/0 临时清空地址
ifconfig DEVICE:# IPADDR/NETMASK 给指定的网卡设置别名,同时指定IP和子网掩码长度
ifconfig DEVICE:# down 取消网卡别名
选项:
-s 统计网卡的传输信息
-a 显示所有网卡信息,包括禁用和启用
备注:使用ip addr add 添加的非主要地址ifconfig是看不到,只能使用ip addr show查看。
ifconfig可以查看到网卡别名,如果想要清楚某个网卡别名可以直接禁用了 ifconfig eth1:1 down就直接没有了
ip命令
来自于iproute软件包
ip [ OPTIONS ] OBJECT COMMAND | help
ip [ -force ] -batch filename
address子集
show 显示地址相关信息
ip addr show
ip addr show dev eth1 只显示指定eth1网卡的相关信息,关键字dev可以省略
ip addr show to 10/8 只显示10.0.0.0网段的地址
ip addr show label eth1:1 只显示eth1:1网卡别名的地址相关信息
add 添加地址相关信息
ip address add ADDR/PREFIX dev DEVICE label I:2
del 删除地址相关信息
ip address del ADDR/PREFIX dev DEVICE label I:2
flush 清空地址相关信息
ip addr flush dev eth0 清空eth0上的所有地址
ip addr flush dev eth1 to 10.3/16 删除eth1网卡上10.3.0.0网段的所有相关地址
route子集
show 显示路由条目信息,可省略
ip route
add 添加路由条目相关信息
ip route add 10.1.0.0/24 via 10.1.0.1 dev eth0 proto static metric 100
ip route add default via 7.7.7.200 dev eth0 添加默认路由
ip route add default via 8.8.8.200 dev eth0
del 删除路由条目相关信息
ip route del 10.1.0.0/24 via 10.1.0.1
ip route del default dev eth0
link子集
show
ip link show 显示网络接口信息,show可以省略,ip link 和 ip link show 结果一样
ip link show DEVICE 显示指定的DEVICE网卡接口信息
set
ip link set DEVICE up|down 启用或禁用某个网卡,与ifconfig DEVICE on|off功能一致
ip link set DEVICE apr on|off 启用或禁用某个网卡的arp功能
ip link set DEVICE multicast on|off 启用或禁用某个网卡的多拨功能
ip link set DEVICE name NEW_DEIVCE_NAME 给某个网卡改名,但是改名的前需要先禁用网卡
ip link set DEVICE mtu MTU 指定某个网卡的mtu大小
ip link set DEVICE promisc on|off 指定某个网卡启用或禁用混杂模式,主要用于抓包
选项:
-s 显示接口统计统计信息
ip -s link 显示接口统计信息,和netstat -i命令、ifconfig -s命令显示功能一样
-c 有颜色输出,会在网卡地址或网卡名称处加以颜色显示,建议定义成别名alias ip="ip -c"
route命令
route 显示路由表
route -n 以数字方式显示路由表
route add/del [-net|-host|default] target [netmask Nm] [gw Gw] [dev If]
例:
route add -host 172.8.2.100/24 gw 10.0.0.1 dev eth1 添加一条主机路由,需要经10.0.0.1网关出去,指定eth1网卡出口,可以省略指定网卡
route add -net 10.0.0.0/8 gw 192.168.0.1 添加一条网络路由,需要经192.168.0.1网关出去,
route default gw 10.0.0.1 dev eth0 添加一条默认路由
route del -net 10.0.0.0/8 gw 192.168.0.1 删除指定的网络路由条目
route del -host 172.8.2.100/24 gw 10.0.0.1 dev eth1 删除指定的主机路由
route del default gw 10.0.0.1 删除默认路由
arp命令
arp -n 可以查看通信过的IP地址和MAC的对应关系
-d IPADDR 删除指定IPADDR地址
-s IPADDR MAC 绑定IP地址和MAC绑定,ARP绑定的优先级最高
nmcli命令
IP地址的另外一个配置命令,是一个庞大的命令集合。多用来广管理网卡配置文件
语法:nmcli [ OPTIONS ] OBJECT COMMAND | help
OBJECT=help | general | networking | radio | connection | device | agent | monitor
connection子集 针对的是网卡配置文件
子集语法:nmcli connection show | up | down | modify | add | edit | clone | delete | monitor | reload | load | import | export [ARGUMENTS...]
show [DEVICE] 显示所有或指定网卡状态信息
reload 重新加载网卡配置文件
up DEVICE_C 启用启用某个网卡的某个配置文件
down DEVICEC_C 禁用启用某个网卡的某个配置文件
add OPTION 给指定网卡添加配置文件
OPTION:
ifname DEVICE 相当于配置文件DEVICE=那列,这里必须指定
type ethernet 相当于配置文件TYPE=那列,这里必须指定
con-name NEW_NAME 相当于配置文件NAME=那列
ipv4.method auto|manual|disabled
auto就是dhcp manual就是static 相当于配置文件BOOTPROTO=那列,这里必须指定
ipv4.addresses IP/NATMASK IP地址和掩码
ipv4.dns DNS
ipv4.gateway 网关
ipv4.routes 路由
delete 删除指定网卡的配置文件
modify DEVICE_C OPTION 编辑某个网卡配置文件
OPTION:
con-name NEW_NAME 修改网卡配置文件名
例: nmcli connection modify eth2 con-name eth2-jia 把网卡配置文件名eth2改成eth2-jia
ipv4.method auto|manual|disabled
auto就是dhcp manual就是static
ipv4.addresses IP/NATMASK 修改IP地址和掩码
ipv4.dns 修改DNS
ipv4.gateway 修改网关
ipv4.routes 修改路由
device子集 针对的是网卡
子集语法:nmcli device status | show | set | connect | reapply | modify | disconnect | delete | monitor | wifi | lldp [ARGUMENTS...]
status 显示网卡状态,可以省略。nmcli device 等同于 nmcli device status
show [DEVICE] 查看网卡具体属性信息,后面如果指定网卡了,可以显示指定网卡的具体属性信息
connect DEVICE 连接指定网卡
disconnect DEVICE 断开连接指定网卡
delete DEVICE 删除指定软设备。This device is not a software device or is not realized
hostnamectl命令
仅在centos78有此命令
hostnamectl set-hostname haha 把主机名改成haha,立即生效,同时会修改配置文件/etc/hostname
hostnamectl status 显示主机名,内核版本信息,操作系统版本信息等等
[root@haha8 ~]# hostnamectl status
Static hostname: haha8
Icon name: computer-vm
Chassis: vm
Machine ID: 18fe9b54d4144939aef656523690f3ed
Boot ID: 75b58ca1fca043b0b86b3adbaea7c04e
Virtualization: vmware
Operating System: CentOS Linux 8 (Core)
CPE OS Name: cpe:/o:centos:centos:8
Kernel: Linux 4.18.0-147.el8.x86_64
Architecture: x86-64
六、多网卡绑定的介绍
共7种模式:0-6 mode
MOde 0(balance-rr) 轮询策略,从头到尾顺序的
Mode 1(active-backup) 主备策略,只有一个slave被激活
MOde 3(broadcast) 广播模式,再所有的slave接口上传送所有的报文,提供容错能力
备注:
active-backup、balance-tlb 和 balance-alb 模式不需要交换机的任何特殊配置。其他绑定模式需要配置交换机以便整合链接。
创建bonding设备的配置文件
需要编辑/etc/sysconfig/network-scripts/ifcfg-bond0
TYPE=band
DEVICE=band0
BOOTPROTO=none
IPADDR=10.0.0.100
PREFIX=24
BONDING_OPTS="mode=1 miimon=100"
备注:miimon是指监测链路时间间隔,如果miimon=100,表示每100ms,检测一次,如果一条链路不通,就立刻转入另一条线路
同时还需要再网卡配置文件中修改/etc/sysconfig/network-scripts/ifcfg-eth0和ifcfg-eth1
DEVICE=eth#
NAME=eth#
MASTER=bond0
SLAVE=yes
ONBOOT=yes
可以通过查看/proc/net/bonding/bond0绑定多网卡的具体信息。
卸载bond网卡
第一步,需要卸载bonding的内核模块
第二步,删除ifcfg-bond0配置文件,同时更改ifcfg-eth0和ifcfg-eth1文件
第三步,重启网络服务
除了手工编写配置问价的方法外,还可以nmcli命令来生成配置文件
#生成bond0配置文件
nmcli connection add ifname bond0 con-name bond0 type bond ipv4.method manual ipv4.addresses 10.0.0.18/24 ipv4.gateway 10.0.0.2 ipv4.dns 222.222.222.222 mode active-backup
#生成各网卡的bond的子文件
nmcli connection add ifname ens160 con-name ens160 type bond-slave master bond0
nmcli connection add ifname ens192 con-name ens192 type bond-slave master bond0
nmcli connection add ifname ens224 con-name ens224 type bond-slave master bond0
#启用各网卡配置文件
nmcli connection up ens160
nmcli connection up ens192
nmcli connection up ens224
以上是 网络入门(一) 的全部内容, 来源链接: utcz.com/z/515925.html