swift proxy-server 安装

Swift 安装
1 Swift(Proxy+storage)
将swift 和keystone分离安装,4个zone用4块硬盘来替代
1.1 环境说明
机器名    eth0    说明
Cloudtest01    192.168.0.17/24    Keystone glance nova-api nova-volumes
Cloudtest03    192.168.0.21/24    Proxy+storage

1.2 系统ubuntu12.04
最小化安装,只需要安装ssh server就可以。
1.3 设置网络
编辑 /etc/network/interfaces
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.0.21
netmask 255.255.255.0
gateway 192.168.0.1
dns-search openstack.com
dns-nameservers 8.8.8.8

auto eth1
iface eth1 inet manual
up ifconfig eth1 up
查看当前网卡情况
root@cloudtest03:~# mii-tool
SIOCGMIIREG on eth0 failed: Input/output error
SIOCGMIIREG on eth0 failed: Input/output error
eth0: negotiated 100baseTx-FD flow-control, link ok
1.4 设置hostname
root@cloudtest03:~# hostname cloudtest03
root@cloudtest03:~# cat /etc/hosts
127.0.0.1       localhost
#127.0.1.1      cloudtest03
192.168.0.17    cloudtest01.openstack.com cloudtest01
192.168.0.20    cloudtest02.openstack.com cloudtest02
192.168.0.21    cloudtest03.openstack.com cloudtest03

root@cloudtest03:~# hostname -f
cloudtest03.openstack.com

1.5 安装软件
root@cloudtest03:~# apt-get update  更新源

apt-get -y install swift swift-proxy swift-account swift-container \
 swift-object xfsprogs curl python-pastedeploy python-keystone python-keystoneclient

1.6 分区
对四块硬盘进行分区,每块硬盘划分一块分区
 fdisk /dev/sdc
 fdisk /dev/sdd
fdisk /dev/sde
fdisk /dev/sdf
 mkfs.xfs -i size=1024 /dev/sdc1
mkfs.xfs -i size=1024 /dev/sdd1
mkfs.xfs -i size=1024 /dev/sde1
 mkfs.xfs -i size=1024 /dev/sdf1
 mkdir /mnt/swift_backend
 pushd /mnt/swift_backend
mkdir node1 node2 node3 node4
popd
 
修改/etc/fstab,末尾添加
/dev/sdc1 /mnt/swift_backend/node1 xfs noatime,nodiratime,nobarrier,logbufs=8 0 0
/dev/sdd1 /mnt/swift_backend/node2 xfs noatime,nodiratime,nobarrier,logbufs=8 0 0
/dev/sde1 /mnt/swift_backend/node3 xfs noatime,nodiratime,nobarrier,logbufs=8 0 0
/dev/sdf1 /mnt/swift_backend/node4 xfs noatime,nodiratime,nobarrier,logbufs=8 0 0
挂载磁盘
mount -a
mount –l  可以查看挂载磁盘情况
创建连接文件
chown swift.swift /mnt/swift_backend/*
for i in {1..4}; do sudo ln -s /mnt/swift_backend/node$i /srv/node$i; done;
mkdir -p /etc/swift/account-server \
/etc/swift/container-server \
/etc/swift/object-server \
mkdir /run/swift
chown -L -R swift.swift /etc/swift /srv/node[1-4]/ /run/swift
系统启动时启动Swift服务,需要把如下两行命令写入 /etc/rc.local里,位置在“exit 0;”之前:
sudo mkdir -p /var/cache/swift /var/cache/swift2 /var/cache/swift3 /var/cache/swift4
sudo chown swift:swift /var/cache/swift*
soudo mkdir -p /var/run/swift
sudo chown swift:swift /var/run/swift

1.7 配置rsync
sed -i 's/RSYNC_ENABLE=false/RSYNC_ENABLE=true/g' /etc/default/rsync

创建/etc/rsyncd.conf
# General stuff
uid = swift
gid = swift
log file = /var/log/rsyncd.log
pid file = /run/rsyncd.pid
address = 127.0.0.1

# Account Server replication settings
[account6012]
max connections = 25
path = /srv/node1/
read only = false
lock file = /run/lock/account6012.lock

[account6022]
max connections = 25
path = /srv/node2/
read only = false
lock file = /run/lock/account6022.lock

[account6032]
max connections = 25
path = /srv/node3/
read only = false
lock file = /run/lock/account6032.lock

[account6042]
max connections = 25
path = /srv/node4/
read only = false
lock file = /run/lock/account6042.lock

# Container server replication settings

[container6011]
max connections = 25
path = /srv/node1/
read only = false
lock file = /run/lock/container6011.lock

[container6021]
max connections = 25
path = /srv/node2/
read only = false
lock file = /run/lock/container6021.lock

[container6031]
max connections = 25
path = /srv/node3/
read only = false
lock file = /run/lock/container6031.lock

[container6041]
max connections = 25
path = /srv/node4/
read only = false
lock file = /run/lock/container6041.lock

# Object Server replication settings

[object6010]
max connections = 25
path = /srv/node1/
read only = false
lock file = /run/lock/object6010.lock

[object6020]
max connections = 25
path = /srv/node2/
read only = false
lock file = /run/lock/object6020.lock

[object6030]
max connections = 25
path = /srv/node3/
read only = false
lock file = /run/lock/object6030.lock

[object6040]
max connections = 25
path = /srv/node4/
read only = false
lock file = /run/lock/object6040.lock

重启服务
service rsync restart

1.8 设置日志
创建 /etc/rsyslog.d/10-swift.conf
# Uncomment the following to have a log containing all logs together
#local1,local2,local3,local4,local5.*   /var/log/swift/all.log

# Uncomment the following to have hourly proxy logs for stats processing
#$template HourlyProxyLog,"/var/log/swift/hourly/%$YEAR%%$MONTH%%$DAY%%$HOUR%"
#local1.*;local1.!notice ?HourlyProxyLog

local1.*;local1.!notice /var/log/swift/proxy.log
local1.notice           /var/log/swift/proxy.error
local1.*                ~

local2.*;local2.!notice /var/log/swift/storage1.log
local2.notice           /var/log/swift/storage1.error
local2.*                ~

local3.*;local3.!notice /var/log/swift/storage2.log
local3.notice           /var/log/swift/storage2.error
local3.*                ~

local4.*;local4.!notice /var/log/swift/storage3.log
local4.notice           /var/log/swift/storage3.error
local4.*                ~

local5.*;local5.!notice /var/log/swift/storage4.log
local5.notice           /var/log/swift/storage4.error
local5.*                ~
编辑 /etc/rsyslog.conf
$PrivDropToGroup adm
创建文件并重启rsyslog服务
mkdir -p /var/log/swift/hourly
chown -R syslog.adm /var/log/swift
chmod -R g+w /var/log/swift
service rsyslog restart

1.9 配置proxy-server
[DEFAULT]
bind_port = 8080
user = swift
swift_dir = /etc/swift

[pipeline:main]
# Order of execution of modules defined below
pipeline = catch_errors healthcheck cache authtoken keystone proxy-server

[app:proxy-server]
use = egg:swift#proxy
allow_account_management = true
account_autocreate = true
set log_name = swift-proxy
set log_facility = LOG_LOCAL0
set log_level = INFO
set access_log_name = swift-proxy
set access_log_facility = SYSLOG
set access_log_level = INFO
set log_headers = True
account_autocreate = True

[filter:healthcheck]
use = egg:swift#healthcheck

[filter:catch_errors]
use = egg:swift#catch_errors

[filter:cache]
use = egg:swift#memcache
set log_name = cache

[filter:authtoken]
paste.filter_factory = keystone.middleware.auth_token:filter_factory
auth_protocol = http
auth_host = 192.168.0.17
auth_port = 35357
auth_token = zhizheng
service_protocol = http
service_host = 192.168.0.17
service_port = 5000
admin_token = zhizheng
admin_tenant_name = service
admin_user = swift
admin_password = zhizheng
delay_auth_decision = 0

[filter:keystone]
paste.filter_factory = keystone.middleware.swift_auth:filter_factory
operator_roles = admin, swiftoperator
is_admin = true
创建/etc/swift/swift.conf
cat >/etc/swift/swift.conf <<EOF
[swift-hash]
# random unique string that can never change (DO NOT LOSE)
swift_hash_path_suffix = `od -t x8 -N 8 -A n </dev/random`
EOF

2.0 Account Server, Container Server, Object Server
创建/etc/swift/account-server/1.conf
cat > /etc/swift/account-server/1.conf <<EOF
[DEFAULT]
devices = /srv/node1
mount_check = false
bind_port = 6012
user = swift
log_facility = LOG_LOCAL2
recon_cache_path = /var/cache/swift
 
[pipeline:main]
pipeline = account-server

[app:account-server]
use = egg:swift#account
 
[account-replicator]
vm_test_mode = yes

[account-auditor]

[account-reaper]
EOF
创建/etc/swift/container-server/1.conf
cat >/etc/swift/container-server/1.conf <<EOF
[DEFAULT]
devices = /srv/node1
mount_check = false
bind_port = 6011
user = swift
log_facility = LOG_LOCAL2
recon_cache_path = /var/cache/swift


[pipeline:main]
pipeline = container-server

[app:container-server]
use = egg:swift#container

[container-replicator]
vm_test_mode = yes

[container-updater]

[container-auditor]

[container-sync]
EOF

创建/etc/swift/object-server/1.conf
cat > /etc/swift/object-server/1.conf <<EOF
[DEFAULT]
devices = /srv/node1
mount_check = false
bind_port = 6010
user = swift
log_facility = LOG_LOCAL2
recon_cache_path = /var/cache/swift

[pipeline:main]
pipeline = object-server

[app:object-server]
use = egg:swift#object

[object-replicator]
vm_test_mode = yes

[object-updater]

[object-auditor]
EOF
创建/etc/swift/account-server/2.conf
cat > /etc/swift/account-server/2.conf <<EOF
[DEFAULT]
devices = /srv/node2
mount_check = false
bind_port = 6022
user = swift
log_facility = LOG_LOCAL3
recon_cache_path = /var/cache/swift2
 
[pipeline:main]
pipeline = account-server

[app:account-server]
use = egg:swift#account
 
[account-replicator]
vm_test_mode = yes

[account-auditor]

[account-reaper]
EOF
创建/etc/swift/container-server/2.conf
cat >/etc/swift/container-server/2.conf <<EOF
[DEFAULT]
devices = /srv/node2
mount_check = false
bind_port = 6021
user = swift
log_facility = LOG_LOCAL3
recon_cache_path = /var/cache/swift2


[pipeline:main]
pipeline = container-server

[app:container-server]
use = egg:swift#container

[container-replicator]
vm_test_mode = yes

[container-updater]

[container-auditor]

[container-sync]
EOF

创建/etc/swift/object-server/2.conf
cat > /etc/swift/object-server/2.conf <<EOF
[DEFAULT]
devices = /srv/node2
mount_check = false
bind_port = 6020
user = swift
log_facility = LOG_LOCAL3
recon_cache_path = /var/cache/swift2

[pipeline:main]
pipeline = object-server

[app:object-server]
use = egg:swift#object

[object-replicator]
vm_test_mode = yes

[object-updater]

[object-auditor]
EOF
创建/etc/swift/account-server/3.conf
cat > /etc/swift/account-server/3.conf <<EOF
[DEFAULT]
devices = /srv/node3
mount_check = false
bind_port = 6032
user = swift
log_facility = LOG_LOCAL4
recon_cache_path = /var/cache/swift3
 
[pipeline:main]
pipeline = account-server

[app:account-server]
use = egg:swift#account
 
[account-replicator]
vm_test_mode = yes

[account-auditor]

[account-reaper]
EOF
创建/etc/swift/container-server/3.conf
cat >/etc/swift/container-server/3.conf <<EOF
[DEFAULT]
devices = /srv/node3
mount_check = false
bind_port = 6031
user = swift
log_facility = LOG_LOCAL4
recon_cache_path = /var/cache/swift3


[pipeline:main]
pipeline = container-server

[app:container-server]
use = egg:swift#container

[container-replicator]
vm_test_mode = yes

[container-updater]

[container-auditor]

[container-sync]
EOF

创建/etc/swift/object-server/3.conf
cat > /etc/swift/object-server/3.conf <<EOF
[DEFAULT]
devices = /srv/node3
mount_check = false
bind_port = 6030
user = swift
log_facility = LOG_LOCAL4
recon_cache_path = /var/cache/swift3

[pipeline:main]
pipeline = object-server

[app:object-server]
use = egg:swift#object

[object-replicator]
vm_test_mode = yes

[object-updater]

[object-auditor]
EOF
创建/etc/swift/account-server/4.conf
cat > /etc/swift/account-server/4.conf <<EOF
[DEFAULT]
devices = /srv/node4
mount_check = false
bind_port = 6042
user = swift
log_facility = LOG_LOCAL5
recon_cache_path = /var/cache/swift4
 
[pipeline:main]
pipeline = account-server

[app:account-server]
use = egg:swift#account
 
[account-replicator]
vm_test_mode = yes

[account-auditor]

[account-reaper]
EOF
创建/etc/swift/container-server/4.conf
cat >/etc/swift/container-server/4.conf <<EOF
[DEFAULT]
devices = /srv/node4
mount_check = false
bind_port = 6041
user = swift
log_facility = LOG_LOCAL5
recon_cache_path = /var/cache/swift4


[pipeline:main]
pipeline = container-server

[app:container-server]
use = egg:swift#container

[container-replicator]
vm_test_mode = yes

[container-updater]

[container-auditor]

[container-sync]
EOF

创建/etc/swift/object-server/4.conf
cat > /etc/swift/object-server/4.conf <<EOF
[DEFAULT]
devices = /srv/node4
mount_check = false
bind_port = 6040
user = swift
log_facility = LOG_LOCAL5
recon_cache_path = /var/cache/swift4

[pipeline:main]
pipeline = object-server

[app:object-server]
use = egg:swift#object

[object-replicator]
vm_test_mode = yes

[object-updater]

[object-auditor]
EOF

最后别忘了编辑 sync
cat <<EOF >>/etc/swift/container-server.conf
[container-sync]
EOF

2.1 确认目录更改权限
chown -R swift.swift /etc/swift
chown -R swift.swift /srv   
chown -R swift.swift /mnt/swift_backend/
2.2 ring server
pushd /etc/swift
swift-ring-builder object.builder create 18 3 1
swift-ring-builder container.builder create 18 3 1
swift-ring-builder account.builder create 18 3 1
swift-ring-builder object.builder add z1-192.168.0.21:6010/sdc 1
swift-ring-builder object.builder add z2-192.168.0.21:6020/sdd 1
swift-ring-builder object.builder add z3-192.168.0.21:6030/sde 1
swift-ring-builder object.builder add z4-192.168.0.21:6040/sdf 1
swift-ring-builder container.builder add z1-192.168.0.21:6011/sdc 1
swift-ring-builder container.builder add z2-192.168.0.21:6021/sdd 1
swift-ring-builder container.builder add z3-192.168.0.21:6031/sde 1
swift-ring-builder container.builder add z4-192.168.0.21:6041/sdf 1
swift-ring-builder account.builder add z1-192.168.0.21:6012/sdc 1
swift-ring-builder account.builder add z2-192.168.0.21:6022/sdd 1
swift-ring-builder account.builder add z3-192.168.0.21:6032/sde 1
swift-ring-builder account.builder add z4-192.168.0.21:6042/sdf 1
swift-ring-builder object.builder rebalance
swift-ring-builder container.builder rebalance
swift-ring-builder account.builder rebalance
2.3 启动服务
swift-init main start
swift-init rest start
2.4 启动proxy-server
swift-init proxy start
swift-init proxy restart
2.5 更改数据库的endpoint使其指向proxy-server地址
root@cloudtest01:/etc/apt# keystone endpoint-list
+----------------------------------+-----------+------------------------------------------------+------------------------------------------------+-------------------------------------------+
|                id                |   region  |                   publicurl                    |                  internalurl                   |                  adminurl                 |
+----------------------------------+-----------+------------------------------------------------+------------------------------------------------+-------------------------------------------+
| 2f73b7eff0844b6d8fea7b80d28696b4 | RegionOne | http://192.168.0.17:8776/v1/%(tenant_id)s      | http://192.168.0.17:8776/v1/%(tenant_id)s      | http://192.168.0.17:8776/v1/%(tenant_id)s |
| 69bf61249b384b75adc2b864a5f006e3 | RegionOne | http://192.168.0.17:9292/v1                    | http://192.168.0.17:9292/v1                    | http://192.168.0.17:9292/v1               |
| 8d34bbe8ffd84feabb0dba4ed522516d | RegionOne | http://192.168.0.17:8773/services/Cloud        | http://192.168.0.17:8773/services/Cloud        | http://192.168.0.17:8773/services/Admin   |
| 98f0d799541c4ae9ac37176a473dbe30 | RegionOne | http://192.168.0.17:5000/v2.0                  | http://192.168.0.17:5000/v2.0                  | http://192.168.0.17:35357/v2.0            |
| b7b2384fdbc1488293c1d38c0e7465e1 | RegionOne | http://192.168.0.17:8774/v2/%(tenant_id)s      | http://192.168.0.17:8774/v2/%(tenant_id)s      | http://192.168.0.17:8774/v2/%(tenant_id)s |
| d7c721763cec4827aecfff71d75b1020 | RegionOne | http://192.168.0.17:8080/v1/AUTH_%(tenant_id)s | http://192.168.0.17:8080/v1/AUTH_%(tenant_id)s | http://192.168.0.17:8080/v1               |
+----------------------------------+-----------+------------------------------------------------+------------------------------------------------+-------------------------------------------+
Swift的endpoint目前指向的是192.168.0.17 控制节点自身,修改数据库将其指向192.168.0.21的proxy-server地址
root@cloudtest01:/etc/apt# keystone endpoint-list
+----------------------------------+-----------+------------------------------------------------+------------------------------------------------+-------------------------------------------+
|                id                |   region  |                   publicurl                    |                  internalurl                   |                  adminurl                 |
+----------------------------------+-----------+------------------------------------------------+------------------------------------------------+-------------------------------------------+
| 2f73b7eff0844b6d8fea7b80d28696b4 | RegionOne | http://192.168.0.17:8776/v1/%(tenant_id)s      | http://192.168.0.17:8776/v1/%(tenant_id)s      | http://192.168.0.17:8776/v1/%(tenant_id)s |
| 69bf61249b384b75adc2b864a5f006e3 | RegionOne | http://192.168.0.17:9292/v1                    | http://192.168.0.17:9292/v1                    | http://192.168.0.17:9292/v1               |
| 8d34bbe8ffd84feabb0dba4ed522516d | RegionOne | http://192.168.0.17:8773/services/Cloud        | http://192.168.0.17:8773/services/Cloud        | http://192.168.0.17:8773/services/Admin   |
| 98f0d799541c4ae9ac37176a473dbe30 | RegionOne | http://192.168.0.17:5000/v2.0                  | http://192.168.0.17:5000/v2.0                  | http://192.168.0.17:35357/v2.0            |
| b7b2384fdbc1488293c1d38c0e7465e1 | RegionOne | http://192.168.0.17:8774/v2/%(tenant_id)s      | http://192.168.0.17:8774/v2/%(tenant_id)s      | http://192.168.0.17:8774/v2/%(tenant_id)s |
| d7c721763cec4827aecfff71d75b1020 | RegionOne | http://192.168.0.21:8080/v1/AUTH_%(tenant_id)s | http://192.168.0.21:8080/v1/AUTH_%(tenant_id)s | http://192.168.0.21:8080/v1               |
+----------------------------------+-----------+------------------------------------------------+------------------------------------------------+-------------------------------------------+
2.6 设置环境变量 /etc/profile 添加
export OS_TENANT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=zhizheng
export OS_AUTH_URL=http://192.168.0.17:5000/v2.0/
导出环境变量
export OS_TENANT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=zhizheng
export OS_AUTH_URL=http://192.168.0.17:5000/v2.0/
检查
root@cloudtest03:/var/log/swift# export |grep OS_
root@cloudtest03:/var/log/swift# export OS_TENANT_NAME=admin
root@cloudtest03:/var/log/swift# export OS_USERNAME=admin
root@cloudtest03:/var/log/swift# export OS_PASSWORD=zhizheng
root@cloudtest03:/var/log/swift# export OS_AUTH_URL=http://192.168.0.17:5000/v2.0/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本书第三部分(共三部分)内容简介 本书从大量的E-mail和BBS中精心筛选了1000个问题,针对网络设计、组建和管理的具体故障,重点介绍了解决问题的策略和排除故障的思路,彻底摒弃了枯燥的理论和简单的操作,着力突出了实用性和可操作性,力求使读者读一反三,触类旁通,从而培养独立思考和处理问题的能力。本书集实用性、思想性、可读性为一体,是一本适合广大计算机编程爱好者的优秀读物。本书适合网络维护工程师、网络工程技术人员、信息系统管理人员,以及所有已经或正准备从事网络管理的网络爱好者。目录 第1章 网络连接常见问题与故障1.1 网络搭建(网络拓扑、网络连接)1.1.1 网络规划1. 物理隔离要建两个网络2. 划分子网隔离子网3. IP与MAC绑定难题4. 实现多VLAN的Internet连接共享5. 延伸至750m6. 延伸至1500m7. 4层楼的拓扑结构8. 网络拓扑问题9. 超过254台计算机怎样在同一个网段10. 教育网多用户共同上网问题11. 限制部门计算机间的访问12. 不能相互访问却要连接共享1.1.2 设备互连13. 10Base-T共享网络连接14. 共享网络传输速率低 15. 不对称交换设备的连接16. 对称交换网络的连接17. 利用三层交换机提高传输效率18. GigaStack菊花链堆迭19. GigaStack星形堆迭20. Catalyst 3750的StackWise堆迭21. Uplink端口使用直通线级联22. Uplink口与相邻端口不能同时使用23. Uplink端口级联24. 普通端口的级联25. 计算机与集线设备的连接26. 什么时候该用直通线?什么时候该用交叉线?27. 重新连接后居然不通28. 局域网连接比Modem还慢29. 家庭网络组网方案30. 更换100Mbps交换机后无法连接至Internet31. 局域网之间使用Modem连接32. 交换机端口能否全部连接计算机1.1.3 连接状态33. 交换机端口指示灯熄灭34. Cisco交换机指示灯35. 判断交换机指示灯状态36. 网卡灯亮却不能上网37. Link灯不停地闪动38. COL指示灯长亮或不断闪烁 39. Collision指示灯闪个不停40. 集线器上与路由器LAN端口连接的灯不亮41. 网卡指示灯及其判断1.2 双机直连42. 被拨叫的主机没有反应43. 远程拨号速率和哪些因素有关44. 利用Modem实现双机直连45. USB连线无法相互访问46. IEEE 1394接口实现双机直连47. Windows XP的串口双机直连48. 相互无法Ping通49. 两台计算机无法实现直连50. 提示“网络电缆没有插好”51. 两台计算机通过3块网卡上网52. 两根网线连接3台计算机及 宽带53. 双机直连LED灯不亮54. 能单独上网却Ping不通对方55. 双机直连不能Ping通1.3 网络链路(综合布线、跳线)56. 140m的距离可否使用超5类屏蔽线57. RJ-45头针脚排列顺序58. 水晶头应压住外层绝缘皮59. 建筑间布线应当选择单模光纤60. 架空式布线应当注意的问题61. 埋入式布线应当注意的问题62. 能否改变双绞线线序63. 实现OA的远程办公64. 避免双绞线遭遇雷击65. 用粗缆还是光缆66. 双绞线的100m极限67. 突破100m极限68. 剪短网线后速度更慢69. 计算机出现短暂的反应迟缓70. Ping服务器时通时不通71. 网速特别慢72. 局域网速度非常慢1.4 网络设备(交换机、路由器、集线器、网卡)1.4.1 设备使用73. UPS的使用和保养74. 电池的使用和保养75. 路由器的选用76. 路由器拨号故障只发生在机关77. 网络经常瘫痪78. 交换机越用越快79. 5口的交换机只能用4口80. 更换交换机后下载速率猛增81. 连接到Hub后死机82. 连接Hub后速率大幅下降83. 用户多时网络速度变慢84. 安装网卡后无法重新启动85. 网卡频繁丢失86. 网卡驱动无法完全卸载87. 无法删除未知设备88. 网卡接口损坏89. 更换网卡后系统不认90. USB网卡无法正确安装91. 网卡MAC地址为FF-FF-FF-FF-FF-FF92. 提示“已有网络适配器使用此地址”93. 经常提示“你的网线没有连接好”94. 只能使用系统自带的驱动95. 更换PCI接口导致故障96. 内置网卡不能上网97. Windows XP上不能同时使用两块网卡98. 网卡工作不正常99. 网卡丢包频繁掉线100. 重复安装的网卡101. 只能发送数据包,而不能接收数据包102. 网卡无法正常安装103. Windows XP下TP-Link网卡安装故障104. 安装网卡找不到RTL8139. SYS文件105. 连接WOL线导致计算机黑屏106. 无法正确安装DFE-530TX网卡107. 无法正确安装PCMCIA网卡108. 移动位置就Ping不通109. 安装网卡后无法正常关机110. 安装网卡并连接后导致网速变慢111. 同一台计算机在家里无法正常使用1.4.2 设备设置112. 主机到本地路由器的以太口不通

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值