Solaris 10以太网卡设置

2023-11-19

前言:
Solaris操作系统的以太网卡(以下简称网卡)设置,是一个老生常谈的话题。网上的相关资料也是汗牛充栋,数不胜数。但对刚刚接触Solaris的朋友来说,最需要的大概是一篇简明通俗、易读易用的操作指南。鉴于此,本文将网卡设置过程中涉及的一些基本操作和常见问题,进行了一下梳理和归纳,同时辅以作者在Solaris 10下进行网卡设置的亲身经历,希望能为读者朋友提供一个入门级的参考。

硬件环境:x86 PC,华硕主板,集成VIA rhine II Ethernet adapter
操作系统:Solaris 10 1/06 x86

为使各位阅读起来更加容易,本文将内容划分为《驱动程序安装篇》、《网卡设置入门篇》、《网卡设置提高篇》三个部分。若文中有不当之处,希望大家批评指正。

一. 驱动程序安装篇

网卡要正常工作,肯定少不了网卡驱动程序的支持。对于一些常见型号的网卡,Solaris 10已经把它们的驱动程序放在安装包里面了。安装操作系统时会提示对网卡进行设置。如果你的网卡恰巧不在此列,那就只能自己动手丰衣足食了。

1. 如何知道网卡型号
1) 查看网卡上的标签信息
2) 在Windows的设备管理器中查看,或在命令行中执行ipconfig /all
3) 如果是品牌机,在产品说明书中查看配置信息

我的机器是自己攒的兼容机,网卡是主板上集成的,在Windows的设备管理器中看到的信息是VIA rhine II Fast Ethernet Adatper。

.2. 如何判断网卡在Solaris 10中是否有现成的驱动程序
1) 去Sun公司的网站上去查,地址是:,点Networking。如果没找到的话也不要灰心,点Next Page看看。
2) 另一种方法是,在安装Solaris 10的时候,如果安装程序自始至终都没有提示你进行网络设置,那就应该是没找到网卡的驱动程序。

在安装Solaris 10的过程中,没有任何一个环节提示我对网卡进行设置。进入Solaris系统后,运行ifconfig -a,只有一个本地自环网络lo0。看来只能自己安装了。

3. 下载驱动程序
到哪里去下载网卡的驱动程序?下面推荐几个驱动程序的来源:
1) 网卡厂家的网站
2) http://solaris-x86.org/software/drivers/
3) http://homepage2.nifty.com/mrym3/taiyodo/eng/index.htm
4) http://www.mydrivers.com/
5) Sun的官方网站www.sun.com
6) 用搜索引擎去搜

经过一番寻觅,我终于在下载到了VIA rhine II在Solaris下的驱动程序。是一个压缩文件rh-2.0.1.tar.gz,里边既有编译好的二进制驱动程序文件,同时包含源代码。

4. 将驱动程序复制到Solaris操作系统中
由于网卡目前还不能工作,无法通过网络上传驱动程序文件。
一般可使用如下三种存储介质来将驱动程序文件复制到Solaris的文件系统中。
1) CD/DVD
2) 软盘
3) USB存储设备

我在Windows下用Nero软件把rh-2.0.1.tar.gz刻录到一张空白光盘上(文件只有163K,有点浪费)。接下来以root用户登录Solaris 10,把rh-2.0.1.tar.gz文件从光盘复制到Solaris硬盘上,解压缩。
# cp /cdrom/cdrom0/rh-2.0.1.tar.gz /tmp
# gzip -dc rh-2.0.1.tar.gz | tar xvf -
在/tmp目录下生成一个rh-2.0.1目录。驱动程序文件rh就位于obj子目录下面。

5. 安装驱动程序
网卡驱动程序有多种发布方式,因而相应的安装方法也不尽相同。
1) pkg包:安装通过pkg文件方式发布的驱动程序,只需要执行一条命令就可以搞定了:
# pkgadd -d .
2) 安装脚本:有的网卡驱动程序通过单独的二进制文件方式发布,同时提供安装脚本和README文件。README里面有具体的安装方法。
3) 无安装脚本:需要使用最原始的驱动程序安装方法,即使用add_drv命令来安装。方法是,将驱动程序文件复制到/kernel/drv或/usr/kernel/drv目录下,再执行# /usr/sbin/add_drv -n -v -i , 。其中的","可在# prtconf -pv的结果中找到。

rh-2.0.1的安装方式是第二种,有现成的安装脚本文件add_drv.sh。我按照README里面的提示,执行
# cd /tmp/rh-2.0.1
# /usr/ccs/bin/make install
# ./add_drv.sh
Driver (rh) installed.
驱动程序安装成功。

6. 网卡命名规则
Solaris使用唯一的设备名来标识每一块物理网卡。网卡设备名的命名规则是 即驱动程序名后面跟一个从0开始的数字。比如机器上装有3块均使用驱动程序iprb的网卡,则依次命名为iprb0,iprb1,iprb2。

按照这个规则,我的网卡设备名应该是rh0。敲入命令,查看当前已安装驱动程序的网卡
# dladm show-link
rh0 type: legacy mtu: 1500 device: rh0
果然有rh0。

 


 

Solaris 10操作系统的以太网卡设置(二)--网卡设置入门篇    2006/03/21


文/李凯


二. 网卡设置入门篇

上一篇我们介绍的是网卡驱动程序的安装过程,并成功安装了VIA rhine II网卡的驱动程序。本篇将以上一篇中安装的网卡rh0为例,对IP地址和子网掩码等一些基本的网络参数进行设置。
通常的设置方式有两种,一是使用ifconfig命令,二是通过创建和修改相关配置文件。使用ifconfig命令,可以使设置立即生效,但设置是临时的,每次系统重启后,需要重新进行设置。而创建和修改配置文件,可保存设置,系统每次启动时,会根据配置文件的内容自动对网卡进行设置。

1. 使用ifconfig命令对网卡进行设置

1) 激活网卡(# ifconfig plumb up)
激活网卡的意义在于将网卡驱动程序加载到Solaris系统的内核中,激活之后才可以进一步对网卡进行操作。

手动激活rh0,
# ifconfig rh0 plumb up

验证结果,
# ifconfig -a
lo0: flags=2001000849 mtu 8232 index 1
inet 127.0.0.1 netmask ff000000
rh0: flags=1000843 mtu 1500 index 2
inet 0.0.0.0 netmask 0
ether 0:8:d:6e:8b:f1
可以看到rh0已被激活,但还没有分配地址。

2) 分配地址
网卡地址分配通常包括静态分配和dhcp动态分配两种方式。任选其一。

a) 静态分配地址(命令 # ifconfig <interface> <address> netmask <netmask>)

把IP: 129.158.215.204 , netmask: 255.255.255.0分配给rh0,
# ifconfig rh0 129.158.215.204 netmask 255.255.255.0

验证结果,
# ifconfig rh0
rh0: flags=1000843 mtu 1500 index 2
inet 129.158.215.204 netmask ffffff00 broadcast 129.158.215.255
ether 0:8:d:6e:8b:f1
IP和子网掩码已生效。

b) 通过dhcp方式分配地址(命令 # ifconfig dhcp )

重新激活rh0,
# ifconfig rh0 unplumb down
# ifconfig rh0 plumb up

通过dhcp方式获得IP和子网掩码,
# ifconfig rh0 dhcp

验证结果,
# ifconfig rh0
rh0: flags=1004843 mtu 1500 index 2
inet 129.158.215.247 netmask ffffff00 broadcast 129.158.215.255
ether 0:8:d:6e:8b:f1
已自动获取到IP和子网掩码。

2. 通过配置文件对网卡进行设置

和网卡基本设置相关的配置文件放在/etc/inet和/etc目录下,包括
/etc/hosts -> /etc/inet/hosts (文件中的每一行记录表示hostname和ip地址的对应关系)
/etc/hostname. (文件内容和文件的扩展名构成hostname和interface设备名的对应关系)
/etc/netmasks (文件中的每一行记录表示和netmask的对应关系)
/etc/dhcp. (dhcp)
创建和修改配置文件后,需要重启系统才能使设置生效。
1) 分配地址
同样包括静态分配和dhcp动态分配两种方式。任选其一。

a) 静态分配地址(文件 /etc/hosts , /etc/netmask , /etc/hostname.)

1> 自定义一个hostname,并指定IP地址
# vi /etc/hosts
加入一行记录:129.158.215.204 myhostname loghost
:x!保存退出。

2> 定义子网掩码
# vi /etc/netmasks
加入一行记录:129.158.215.0 255.255.255.0
:wq保存退出。

3> 将自定义的hostname关联到rh0
# vi hostname.rh0
加入一行记录:myhostname
:wq保存退出。

b) 通过dhcp方式分配地址(文件 /etc/hostaname. , /etc/dhcp. )

1> 创建空文件hostname.rh0
# touch /etc/hostname.rh0

2> 创建文件dhcp.rh0
# touch /etcdhcp.rh0
需要的话还可以在该文件中填入超时时间(秒),比如:30

2) 重启系统
# reboot

3) 常见问题:
在/etc/hosts文件中修改了IP地址,重启后,发现机器的IP地址还是原来的,是怎么回事?
问题可能出在/etc/inet/ipnodes文件。该文件的语法跟/etc/hosts相同,但优先级高于/etc/hosts。如果/etc/inet/ipnodes文件中保留了原来的IP地址,那么/etc/hosts中相同hostname的IP设置将被忽略。将ipnodes文件中的IP地址一行删掉,或改成新的IP地址,重启后,问题就消失了。

3. sys-unconfig
如果觉得使用ifconfig命令和手工修改配置文件太麻烦,可运行sys-unconfig命令,以交互方式对系统重新进行设置。执行
# sys-unconfig
重启后,系统会提示对网卡进行设置,并将设置结果自动保存到配置文件中。

 

 

Solaris 10操作系统的以太网卡设置(三)--网卡设置提高篇    2006/03/21


文/李凯

三. 网卡设置提高篇

在上一篇里,我们以网卡rh0为例,设置了IP地址和子网掩码等一些基本的网络参数。本篇将在前一篇的基础上,对网卡设置中涉及的路由、DNS、逻辑网卡等进一步进行设置。

1. 网关设置
1) 添加网关
a) 可以使用route命令添加缺省网关,即时生效
# route add default <网关地址>

b) 还可以将网关地址保存在/etc/defaultrouter中
# vi /etc/defaultrouter
在文件中加入网关的IP地址或hostname(必须在/etc/hosts中已经配置)
:wq!保存退出
# reboot
2) 查看缺省网关
# netstat -r

2. dns设置
1) 创建/etc/resolv.conf文件
# vi /etc/resolv.conf
将dns的IP地址填在文件中
:wq保存退出。
domain machinename
nameserver 10.198.22.23

2) 修改/etc/nsswitch.conf文件
# vi /etc/nsswitch.conf
找到"hosts: files"一行,在后面加dns,即修改为
hosts: files dns

3) 重新plumb网卡或reboot

4) 验证dns是否生效
# ping www.google.com

# nslookup www.google.com

3. 域名设置
1) 创建/etc/defaultdomain文件
# vi /etc/defaultdomain
在该文件中加入domainname,比如prc.sun.com
:wq保存退出
2) 在/etc/hosts加入一行新的记录(格式为 .)
# vi /etc/hosts
加入一行新的记录,比如
129.158.2.104 myhostname.prc.sun.com
:wq保存退出

4. 逻辑网卡
如果想为一块物理网卡设置多个IP地址,可通过添加逻辑网卡(或叫虚拟网卡)来实现。比如为rh0增加一个逻辑地址129.158.215.207,与前面IP地址设置的方式和方法完全相同,网卡的名字为rh0:1,如果添加更多的逻辑网卡,rh0:后面的数字依次增加。
具体方法参见前一篇《二. 网卡设置入门篇》。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Solaris 10以太网卡设置 的相关文章

随机推荐

  • vue3 新特性

    注册全局组件 import HelloWorld from components HelloWorld vue const app createApp App 全局挂载属性和方法 方法一 app config globalPropertie
  • 2021年米哈游unity社招面试经历

    文章目录 简介 一面 二面 三面 四面 简介 我面试的岗位一共4轮 第1轮是电话技术面试 考察范围广 不细问 第2轮是视频面试 需要牛客网手写算法 第3轮是制作人 第4轮是BP 流程比较慢 投递到邀请面试大概过了一个月 面试一周多 offe
  • 使用Python实现累积面积图 using Python for cumulative area plot

    Code import matplotlib pyplot as plt import numpy as np np random seed 444 data np random rand 5 10 cumsum axis 1 years
  • 互联网 API 接口幂等性设计

    WEB 资源或 API 方法的幂等性是指一次和多次请求某一个资源应该具有同样的副作用 幂等性是系统的接口对外一种承诺 而不是实现 承诺只要调用接口成功 外部多次调用对系统的影响是一致的 幂等性是分布式系统设计中的一个重要概念 对超时处理 系
  • angular中的全局方法和指令介绍1

    复习并总结Angular开发流程 0 下载angular 暴力angular 找到js拖拽过来 npm下载 1 引入 2 在要控制的标签上写上ng app 3 写controller 告诉angular哪部分dom结构有哪个controll
  • 用户体验与界面设计:常见的UI设计模式

    http www yixieshi com ucd 10761 html 交互设计师在设计线框图原型时 熟知常见的web设计模式很有帮助 做到 心中有数 才能创造出符合需求 用户易学易用的界面来 所谓 没有必要重复发明轮子 模式往往容易解决
  • 世界上最令人看起来感觉舒适的10种颜色

    世界上最令人感觉舒适的10种颜色 前端调色再也不怕找不到色码了 如果有打开微信 或者QQ 的话 按下Alt A键 或Ctrl Alt A键 鼠标放到色块上就能看到RGB了
  • python print()拼接打印内容包含空格,去除空格的方法

    python输出内容为拼接 或字符串中带有空格 想打印时候去掉所有空格 i 1 while i lt 4 print i end i 1 输出内容为 1 2 3 4 数字的前后都带有空格 可以使用 sep print i sep end 输
  • 路由器常见配置和解决方案

    示列1 分析 由于Windows系统的网关没有配置 如果配置好了再次ping不通的话 可能是由于DNS没有配置 转载于 https www cnblogs com l75790 p 11022632 html
  • rdb map出錯rbd sysfs write failed

    創建了一個rbd鏡像 rbd create size 4096 docker test 然後 在Ceph client端將該rbd鏡像映射為本地設備時出錯 rbd map docker test name client admin rbd
  • 微信小程序<open-data type=“userAvatarUrl“>真机无法获取头像问题/解决办法

    今天在做小程序的时候使用open data type userAvatarUrl 标签发现在本地开发的时候可以获取本人的头像 但是在真机上就无法显示解决办法 我们要换一种思路去处理 使用官方提供的方法 官网文档链接 wxml
  • 模块功能耗时长排查

    模块功能耗时长排查 1 场景介绍1 1 1 原有场景 OA服务 发送代办 代办推送到OA代办中心 OA代办中心 推送到 总部统一代办中心 我们排查请求耗时 发现 OA代办中心 推送到 总部统一代办中心的业务代码耗时非常久 1 2 原有场景总
  • Ubuntu配置NFS服务器(Linux挂载Linux)

    Ubuntu配置NFS服务器 服务器端的配置 Ubuntu安装NFS服务器端 sudo apt get install nfs kernel server 服务端查看版本 nfsstat s 在桌面上创建共享目录 mkdir share 修
  • ChatGPT提示词工程进阶教学

    ChatGPT提示词工程 1 两种大型语言模型LLM 1 1 基础大模型 base LLM 1 2 指令调优大模型 Instruction Tuned LLM 2 如何更清晰 具体地书写提示词 2 1 在提示词中使用 定界符 2 2 向模型
  • 正则表达式的贪婪与非贪婪匹配

    例 String str 地点 北京市123区456 测试测试 测试 要匹配在 地点 之后并且在 之前的内容 贪婪匹配 正则表达式一般趋向于最大长度匹配 也就是所谓的贪婪匹配 例如上面的str 使用正则 Patter p lt 地点 默认是
  • 【面试刷题】——指针存的是什么

    指针 Pointer 是一种用于存储变量或数据对象内存地址的数据类型 指针存储的是内存地址 这个内存地址指向计算机内存中的某个特定位置 这个位置存储着实际的数据 当你创建一个指针变量时 它会指向另一个变量的内存地址 从而允许你通过该指针来访
  • linux内部调用摄像头的第三方程序(命令):cheese

    linux内部调用摄像头的第三方程序 命令 cheese sudo apt get install cheese 关于cheese的使用可能会出现异常 Clutter WARNING Whoever translated default L
  • PHP实现发送邮件(附代码)

    发送邮寄功能的实现用到了PHP中的phpmailer函数包 它支持openssl和sockets 下载地址 下载后找到class phpmailer php class smtp php这两个文件 和你的代码放在一个目录 要实现发送邮件的功
  • mipi协议_MIPI系列之“MIPI CSI/DSI接口的FPGA实现”

    欢迎FPGA工程师加入官方微信技术群 点击蓝字关注我们FPGA之家 中国最好最大的FPGA纯工程师社群 本文主要介绍MIPI D PHY在FPGA上的实现 随着camera和显示技术的发展 MIPI接口在实际运用中越来越广泛 MIPI接口协
  • Solaris 10以太网卡设置

    前言 Solaris操作系统的以太网卡 以下简称网卡 设置 是一个老生常谈的话题 网上的相关资料也是汗牛充栋 数不胜数 但对刚刚接触Solaris的朋友来说 最需要的大概是一篇简明通俗 易读易用的操作指南 鉴于此 本文将网卡设置过程中涉及的