ラベル NIC の投稿を表示しています。 すべての投稿を表示
ラベル NIC の投稿を表示しています。 すべての投稿を表示

2019年3月2日土曜日

ネットワーク設定で、刺さっているnicと名前が一致しない

複数のNICを挿したPCをいじっていると、どのNICがどの名前なのか分からなくなる。
特に、オンボードのNICは基本使わなかったりするので、設定初期だと尚更である。
たとえば、3枚のネットワークカードを挿していたとして、オンボードを合わせると4つLANアダプタがあることになる。
 さらに、すべてをbondingさせたりしてごっちゃになってたりするから、その中からオンボードを洗いだしたい、みたいな時のtips。

今回判断に使ったのは、NICのベンダ名。
オンボードNICがrealtekだった(そして他に刺したのが全てインテルだった)ので話が早い。

ベンダを判別するにはethtool -iを使う。
ethtool -i [NIC名]
と打つ。
例ハ

ethtool -i enp3s0
スルト
driver: r8169
version: 2.3LK-NAPI
firmware-version: rtl8168g-2_0.0.1 02/06/13
expansion-rom-version:
bus-info: 0000:03:00.0
supports-statistics: yes
supports-test: no
supports-eeprom-access: no
supports-register-dump: yes
supports-priv-flags: no
 のように表示されるので、ドライバ名を見ると、大体チップセット名が書いてある。
更に詳しく見たいのであれば、ドライバ名をmodinfoで見る。

modinfo r8169



filename:       /lib/modules/3.10.0-862.el7.x86_64/kernel/drivers/net/ethernet/realtek/r8169.ko.xz
firmware:       rtl_nic/rtl8107e-2.fw
もろもろ続く。。。
version:        2.3LK-NAPI
license:        GPL
description:    RealTek RTL-8169 Gigabit Ethernet driver
author:         Realtek and the Linux r8169 crew
retpoline:      もろもろ続く。。。

参考は
http://thatsdone-j.blogspot.com/2012/12/linuxnic.html

2016年6月3日金曜日

カテゴリ6ケーブル(cat.6)の自作を業者がお勧めしない理由

インフラ屋に「カテ6ケーブル自作は難しいか」と聞くと、間違いなく「難しい」という答えが返ってくる。
初めは「カテ5と同じ作りなのだから、作れないはずは無い」と思うだろうが、まあ、後悔することになる。
作れないわけでは無いが、作りたくない、という、なかなかやっかいなケーブルである。

何が難しいのかというと
・ケーブルが扱いにくい
とにかく固い。十字介在物がアルのに加えて、8本がよってあるので、固すぎてケーブルの取り回しが兎に角面倒である。

・作りがシビア
十字介在物は根っこで綺麗に切らないとRJ45コネクタに刺さってくれないし、撚りを綺麗に戻して、ジャストな長さで切らないと、
コネクタが刺さるのを拒否する。
カテゴリ5eなら、若干のずれは許容されたが、カテゴリ6はその「アソビ」が無い。

・リンクアップしない
語弊がある書き方だが、上記のようなシビアさがあり、きちんと施工しないと予定の速度でリンクアップしてくれない。
10Gネットワーク環境を作ろうとしてはまった所である。

・真面目に作ってある
エレコムのLANケーブルは、撚りが乱雑なことで有名(うーん)だが、カテゴリ6は全て綺麗に撚ってある。
ケーブルの太さも、各社ばらばらだが、cat.5eと比べてけして細くはない。
しかも十字介在物のせいで、配線が外皮よりになっているので、皮むき工具でCat.5eと同じようにやると、即傷が付く。

・色んな所で力まざるを得ない
何故か、cカテ5よりもカテ6の方が力がいる。ケーブルが固い、撚りをほどく際に指先を使う等、結構力が要る。

・高い
無駄に部材が高いので(コネクタ一個50円~100円とか)、カテ5のように、失敗したら切ればいいや、なんて言えない。
かしめるので、一期一会になる。失敗したら100円玉が消えていく。

これを見た後でも、どうしても作りたいならば、以下のtipsが役に立つかもしれない。


■カテゴリー5で慣れる
基本的に、カテゴリー6以上のカテゴリケーブルは、カテゴリ5のケーブルを余裕で作れる人にしか勧めない。
要領は同じで、条件がシビアになっているというだけである。

■工具は良い工具を使う
基本的に、カテゴリー5を作るときの工具で良い。
が、かしめ工具はラチェット式の方が良い。
カテ5の感覚でかしめると、不良で速度が出ないことがある。
僕はHT-210Cを常用しているが、これにはラチェットが付いていないのでお勧めしない。
因みにサンワサプライも販売しているが、元々台湾の会社だったはずで、色んな会社が売っている。
慣れればこれでも出来なくは無いが・・・腱鞘炎に注意すること。

■ケーブルストリッパーは使わない
上記のように、外皮に対してぱんぱんになっているモノが多いので、ケーブルストリッパーだと内部配線に傷を付けてしまうことが多い。
ニッパーで被覆をはがせるようになった方が良い。
お勧めはフジ矢の電工名人強力ニッパ(VA線が切れるやつ)。
http://www.fujiya-kk.com/ja/products/194/

1つあれば、ずっと使えるだろう。
また、こいつも結構切れるタイプなので、ある程度切れ込みが入ったら、力任せに引っこ抜くというのをお勧めしたい。
これなら傷が入る可能性を最小限に抑えられる。

■テスト用のPCやハブを用意する
安いケーブルチェッカーでは、速度が出ているかどうか確認出来ない。
必ず用意しておいた方が良い。敷設後に速度が出ないとか、最悪である。

■逆相巻きはマスターすること
ケーブルが固いが、撚り線なので、癖が付くと敷設がすごく面倒になる。
出来れば、箱から出した際に、一度逆相巻きして綺麗な癖付け(もしくは癖取り)をした方が良い。
また、ケーブル折れに関しても結構シビアなので(折れたら10Gでリンクアップしなくなったり)、これは押さえておきたい。

■手袋を付けて作業する
これが一番かもしれない。
やってて分かってくるが、上記のように、以外に力が要る。
そこで、滑り止め付きの手袋をお勧めする。
これがあれば、以下のことが楽に出来て、腱鞘炎になり辛いだろう。
おすすめは、ユニワールドが代理店している「ワンダーグリップ」シリーズ。
http://www.wondergrip.net/
おすすめはWG1850か、WG1837。
指先が使えるので非常に使いやすい。
但し、耐久性はさほど無いので、破れたら(ニトリルゴムが取れだしたら)買い換えを考えよう。
安いのでそんなに躊躇せず買える。一双で250~350円位。

■一日○本までと決める
一日20本作ると、1週間で全治2ヶ月の腱鞘炎(らしきもの)になる。
僕は指の第二関節と第三関節、手首が恐ろしいことになり、整形外科に通うことになった。
経験則から、一日10本が限度くらいにしておいた方が良い。
10本でも多いか・・・。
カテ5ならこんな事は無かったが、6はやけに力が要る。
甘く見ていると手痛いしっぺ返しを食らう。

■被覆の長さや、ケーブル切断に注意する
配線を何センチ残すか、ケーブルは線に対して垂直に切れているかが非常に重要になる。
外皮を剥くときは、5センチ以上出して、3~3.5cm最後に切るのが正しい。
また、外皮の伸縮も考慮しながら「うまくやる」しかない。

兎に角遊びが無いので、カテゴリ5で慣れていないと、散財することになる。

2015年7月1日水曜日

ネットワーク関係小ネタまとめ。nmap、ネットワークモニタリング等

http://takuya-1st.hatenablog.jp/entry/2014/10/07/013407

nmapでローカルアドレスレンジの機器を調べる方法。
nmap -sP 192.168.2.0/24
なるほどね。

ネットワークモニタリングツールまとめ
http://orebibou.com/2014/09/linux%E3%81%A7%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%81%AE%E7%9B%A3%E8%A6%96%E3%82%92%E8%A1%8C%E3%81%88%E3%82%8B%E3%83%A2%E3%83%8B%E3%82%BF%E3%83%AA%E3%83%B3%E3%82%B0%E3%82%B3/

ポートが分かるiftop(hでヘルプが開く)はお勧め。ただウェブサーバには微妙な感じ。
iftopはepelリポジトリの中なので、
yum install --enablerepo=epel iftop
http://techblog.clara.jp/2015/02/iftop/

epelは
http://www.kakiro-web.com/linux/epel-install.html
を参考に
yum install epel-release
で突っ込む。

総量をみるなら、bwmonの方がいいかな。
http://bwmon.sourceforge.net/

ifconfig、route、netstat、arp等は
yum install net-tools
でインストールできる。
http://blog.be-dama.com/2014/06/18/red-hat-el-7%E3%81%AEifconfig%E3%81%A8%E3%81%8B%E3%83%AC%E3%82%AC%E3%82%B7%E3%83%BC%E3%81%AAnet-tools%E3%81%8C%E3%81%AA%E3%81%8F%E3%81%AA%E3%81%A3%E3%81%9F/

2015年6月23日火曜日

windows7とファイルサーバのやりとりを高速化したい(large mtuの有効化)

windows7とファイルサーバのやりとりを高速化したい(large mtuの有効化)

何故今まで知らなかったんだろうという目から鱗の記事。

http://d.hatena.ne.jp/ogawad/20130702/1372719890

windows8から標準化されたlarge MTUをwindows7で有効化すると、約30%以上の高速化が見込まれる。
普通にジャンボフレームとか設定しては挫折したのに、たったこれだけで「本当に」高速化した。

Registry key    HKEY_LOCAL_MACHINE
Registry path    System\CurrentControlSet\Services\Lanmanworkstation\Parameters
Value Name    DisableLargeMtu
Value type    REG_DWORD
Value range    1=disable, 0=enable
Default value    1 (if not present)

要はレジストリエディタで、

HKEY_LOCAL_MACHINE



System\CurrentControlSet\Services\Lanmanworkstation\Parameters

を開き、新規で

DisableLargeMtu

を追加(reg_DWORD)。

値を0に。

すると、クライアント→ファイルサーバの送信が
350mbps→430mbps(最速値。2GBのファイルを送信。22%高速化)
ファイルサーバ→クライアントが
500mbps→700mbps(最速値。同ファイルを受信。40%高速化)
した。

何で知らなかったんだろう本当に・・・。
因みにいわゆるMTU値を弄るジャンボフレームはオフでの値。

無知は恥ですわ・・・。

2014年6月6日金曜日

オンボードLAN(NIC)のスピードが出ない。Realtek製チップr8168(r8111)のドライバをcentos6.5にRPMでインストール。

関連記事はこちらこちら

安定性はピカイチのGA-C1037UN-EU。
だけど何故かLANが遅い。
気になって調べていると、
http://www.geocities.jp/infinite_555/ta/file-s.htm

>あとubuntu13.10現在ではLANチップのドライバーが違う機種のものが誤ってインストールされる現象があります。
>
>手動にて直す必要があります。GA-C1037UN-EUのLANチップはREALTEK RLT8111なのですが
>ドライバー名がR8169というのが誤ってインストールされているのです。正しくは”R8168”。これubuntu界隈では非常に有名なのだそうです。
>
>タチが悪いことに一見正常に振る舞うんです。でも実情は性能が出し切れていない状態なのでsambaの転送速度が下の画像のようにおかしな事になっていました。

http://www.akiyan.com/blog/archives/2009/10/centos-nic-realtek-rtl8111-8168b-r8169.html
を参考に早速確認しようと思ったら、ミニマムインストールしていたので、諸々が無い。
lspciを打とうとしたら、そもそも無い・・・。
で、インストールする。
yum install lspciと打ってみるが、そんなものは無いと言われる。
http://www.miuxmiu.com/archives/2012/04/24/centos_6_yum_lspci_install_command.html
ということで、

yum install pciutils

でlspciをインストール。

http://katzplus.com/centos/yum/centos%E3%81%A7%E3%80%8C%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%81%8C%E8%A6%8B%E3%81%A4%E3%81%8B%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93%E3%80%8D%E3%81%A8%E3%81%8B%E8%A8%80%E3%82%8F%E3%82%8C%E3%82%8B-yum/
を参考に
yum install mlocate
でlocateを入れる。
updatedb
でlocateのデータベース更新しながら諸々とこなしていくと、modprobe.confが無い。
そういえばcentos6系からmodprobe.confが無くなってた・・・。

色々面倒だったので、r8169.koだけ適当に移して、
http://wingse.blog57.fc2.com/blog-entry-313.html
を参考に、RPMパッケージでインストールする。

ELRepoは初めて知った。
http://elrepo.org/tiki/tiki-index.php

具体的な手順は

ELRepoリポジトリのインストール

rpm -ivh http://elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm

リポジトリのイネーブルを変更。

vi /etc/repos.d/elrepo.repo
中の
enabled=1

enabled=0

ドライバインストール

yum --enablerepo="elrepo" install kmod-r8168

http://wingse.blog57.fc2.com/blog-entry-313.html
の通り
r8168ドライバーの反映

SSHで作業する場合、ドライバーの入れ替え時に通信が遮断されてしまうため、以下のコマンドで一気にその作業を完了させます。

# rmmod r8169 && depmod -a && modprobe r8168 && service network restart

確認

# lsmod | grep r81

r8168が表示されれば成功です。

という感じで終了。

修正
enablerepoの綴り間違えてました。

追記

またやったので、今度は公式に沿ってみた。

まず確認
lspci |grep Ether

01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
みたいにでる。

ドライバの確認
lsmod |grep r81

r8169だと差し替え。

公式
http://www.realtek.com.tw/downloads/downloadsView.aspx?Langid=1&PNid=13&PFid=5&Level=5&Conn=4&DownTypeID=3&GetDown=false#2
で、URLを振り出してダウンロードする。
jsを見るのが面倒なら、ブラウザで一度ダウンロードして、ダウンロード元リンクをコピーするという方法が良い。

ダウンロード
wget http://12244.wpc.azureedge.net/8012244/drivers/rtdrivers/cn/nic/0002-r8168-8.040.00.tar.bz2

解凍
tar jxvf 0002-r8168-8.040.00.tar.bz2

出来たr8168-8.040.00に入って、readme通り
sh ./autorun.sh
を実行すると、動作的にはr8169を消して、ドライバをビルドしてdepmodで差し替えをしてくれる。

差し替わっているかどうかの確認
lsmod |grep r81

これで8168になっていたら終了。
sshで操作していると切断されるので、RPMインストールの方が安全な気がする。
あとカーネルを更新したときに、RPM以外での差し替えだった場合、ドライバってどうなるんでしたっけ。
前nvidiaのドライバ差したときは、カーネル更新毎に入れ直しをしていた気がする。


ifconfig、route、netstat、arp等は
yum install net-tools
でインストールできる。
http://blog.be-dama.com/2014/06/18/red-hat-el-7%E3%81%AEifconfig%E3%81%A8%E3%81%8B%E3%83%AC%E3%82%AC%E3%82%B7%E3%83%BC%E3%81%AAnet-tools%E3%81%8C%E3%81%AA%E3%81%8F%E3%81%AA%E3%81%A3%E3%81%9F/

2014年6月5日木曜日

隔世の感とはこのことか。celeron 1037U(GA-C1037UN-EU)を使ってみて。

AMDが強力なCPUを輩出して追い込まれたintelが出した救世主core 2 duo。
もう8年前なのか、と思うと、なかなか感慨深い。
何故C2Dの話から入ったのかというと、
今回celeron 1037Uを選定する機会があり、ベンチマークなどを見て回ったが、これが凄かった。
core2duoのE6400とほぼ変わらない、むしろ速い石だったのである。

流石に8年。時代は変わる。
celeronであっても、当時のハイミドルスペックが買えるのである。
しかもファンレス。低TDP、且つ、安い。
社内向けサーバにはうってつけである。外向きになら、これで多段組しても良い。
また、リビングPCとしても全く問題が無い。
実際C2Dの速度は、リビングで使うであろう作業(ブラウジング、メールなど)には今でも十分すぎるスペックである。
intelのNUCでceleron搭載のものがあり、
こんな事になってるとは夢にも思わなかったので馬鹿にしていたが、実は結構な代物だったということである。
まさに隔世の感、置いてきぼりを食った感じ。

10万以上かけて組んだPCが、今となっては3万か、と思うと、それはそれで切ないが、celeron搭載機を侮らず、積極的に取り入れていきたいと思いましたとさ。

今回使用したのはgigabyteの「GA-C1037UN-EU」。
要件定義としては
・owncloud用のウェブサーバ
・小さく静かに
・CPUはオンボード、できればファンレス
・HDDは最高4台積む
・そこそこ速く(Atomで一度痛い目を見た)

組み上がったもの
GA-C1037UN-EU
SILVERSTONE PSO8
ADATAの8GBRAM(不安要素)
HGSTの1GBとSeagateの1.5TBHDD
CORSAIRのCX430X
締めて4万円。

GA-C1037UN-EUはNICが2つついているので、そもそもサーバ用途に使いやすいし、特に癖が無い板である。

2013年11月13日水曜日

名前の解決は出来るがpingが通らない

久しぶりにやらかした。


NICが2つあるマザーでゲートウェイを組もうとしていた。
DNSリゾルバを組み込もうとしたところで躓く。
何故かpingが通らない。
そして名前も引けない。
ここでの解法は簡単な物だった。
namedを設定する直前に、squidプロキシの設定やらがちがちの禁止事項を盛り込んだiptablesのシェルスクリプトファイルを読み込んだからである。
そこまでは良かった。
そしてそこからが大変だった。
取り敢えず物理的環境を実運用スタイルにと思い、

インターネット

ルータ(192.168.69.1)

eth0(192.168.69.2)

ゲートウェイサーバ本体

eth1(192.168.96.1)

ハブ

設定用ノートPC(192.168.96.2)

という構成にしたところ、
素の状態で、何故かgoogle.comにpingが通らない。
何をしても通らない。
iptablesを落とし、selinuxを落としても直らない。
 だがdigするとgoogle.comの名前は引ける。
ルータ(192.168.69.1)にもpingが通る。
でもdigで引けたgoogleにpingが通らない。
ルータにノートを直づけすると、勿論gogle。comは通る。

名前は解決できているので、少なくともサーバはルータには繋がっている。
ルータはgoogle.comに繋がっている。
 でもサーバからgoogleにpingが通らない。
ある意味「半分繋がっている」、という不思議な状態。
経路の問題というのは分かるのだけれども、tcpdumpを眺めても特になく。

嫌な感じがして、わざわざgnome環境をサーバに入れてみたところ、
サーバ上のfirefoxでもgoogle.comに繋がらない。
意味が分からない・・・。

やはりそこはgoogle先生にということでお伺いを立て続けると、

http://okwave.jp/qa/q7244798.html

が。

外部、というのが202.xxx.xxx.xxx/28や192.168.xxx.xxx/24以外のネットワークだとしたら当然そうなります
デフォルトルートが2つ設定されていますが、実際に有効になるのは片方だけなので

ネットワークのあて先がわからないときの最終的なパケットの投げ先がデフォルトゲートウェイなので、そんなものが2つあっても片方にしか投げられないのが原因
片方のデフォルトゲートウェイを残し、もう片方のNICに対しては必要な分のスタティックルーティングを設定すべきです

まるっきり状況が同じ。

要は、eth0とeth1に、別のゲートウェイを指定していたためにこうなってしまったのである。

実はeth1は、元から有る環境に接続するため(ぶら下がるために)IPアドレスは、
192.168.96.1ではなく、192.168.96.20だった。なので、eth1にはGATEWAY=192.168.96.1が設定されていた。

上記のような環境にするために、eth0にGATEWAY=192.168.69.1を設定したにもかかわらず、
eth1のGATEWAYが優先され、本来GATEWAYとして通らなければならない192.168.69.1は無視されたと。

要は、一番初っ端のネットワーク設定をしくじっていたということである。
eth1のGATEWAY記述を192.168.69.1にすることで一応の解決を見た(これ消した方が良いのかしらん)が、
全く気付かなかった・・・。

2013年3月23日土曜日

ファーウェイ製の無線ルータ(ポケットWi-Fi)はなかなかぐっとくる

今手元にファーウェイ(華為技術、Huawei、モデルナンバーにHWが入っている)製のモバイルルータ(ポケットWi-Fi)が2つ有る。
これで散々な目にあったのでメモ。

要旨
インターネット放送をこれら製品で行った結果、度重なるブルースクリーンと通信障害に見舞われた、というもの。

繋ぎとしては、PC(WIN8)と同製品をUSBで接続し、配信するというシンプルなものであるが、通信開始後、必ず10分から20分内に青画面を吐いて落ちる。
キャリアを変えれば(docomo→e-mobile)良いのかと言えばそうでもなく、同じように落ちる。
結果「USBで繋がなければいい」という結論に達し、Wi-Fiで接続すると、30分で通信が途切れる。
なんだこれは。

僕の推測
・ドライバが糞
 ファーウェイのドライバは、色んな通信系のアプリケーションとかち合い、相性が大変悪い。たとえばblackberry desktop managerの入ったPCに入れると、ほぼ100%の割合で不具合を出す(最悪ブルースクリーンを吐く)
ブルースクリーンも、エラーコードを見るとメモリへの干渉(ページエラー)のようである

・熱暴走
 恐らくこういった類のものは、ブラウジングを主としており、通信し続けるようにはそもそも出来ていないのではないか。ただこれに関しては前例が幾つもあるので否定できる。

・陰謀説
 ファーウェイとZTEが、アメリカから名指しで導入するなと言われたが、これがそれなのかと勘ぐってしまう。実は実機以外での事前テストをマウスコンピュータ製のPCで行った際、なんのエラーもなく上手くいっている。マウスコンピュータは中国、台湾産パーツを組み立てただけのものなので、
1.余計なアプリケーションが入っていない
2.やっぱりむにゃむにゃ
どっちかなあ。因みに事後検証で、windows8PCをNEC、WindowsXPPCをPanasonicを使用し、試したが同様のエラーを吐いた。

普通に使っていれば、特に問題はない
なんと、ブラウジングベースでは特にエラーも吐かず、通信できたりする。
ただ、たとえばyoutubeを複数ページ開いて動画を見ていると、いつかブルースクリーンに見舞われる。Wi-Fi接続のみならば、Wi-Fiが途切れる(コネクションエラーが出る)

そこからの推測としては
・やっぱり熱暴走
 設計が悪いのか、給電しながら充電しているので熱を持つのか。
・やっぱりドライバが糞
 Wi-Fi接続でなく、USB接続の場合、OSを巻き込んで落ちる(ブルースクリーン)ので、間違いなくドライバが糞である。Windowsに詳しくないので、通信関係のドライバはそういうものだと言われるとしようがないのだが、他のUSB機器がエラーで落ちてもOSは巻き込まないのでそれはあり得ないだろう。

結論
結論としては、帯域を多く使うような仕事で、(少なくとも実験結果のある)ファーウェイ製のモバイルルータ(ポケットwifi)を使う際は、
・USB接続をしない
・30分おきに通信エラーが出るものと認識し、その都度再起動させる
の2点を踏まえることが重要なのではないかと。

そもそもそんな用途に使うなと言うのも分かるが、使わざるを得ない状況なんて山ほど・・・。

2011年11月2日水曜日

NetworkManagerに嵌められる

サーバ構築の際、マシンスペックも上がったので、GUI環境を用意しようと色気を出したのが拙かった。
ネットワークの設定で詰まるとき、引っかかるのが「SElinux」「iptables」が代表的だったのだけれども、
それに「NetworkManager」が加わった。

NetworkManagerの悪いところは、resolv.confを勝手に書き換えたり、routeをぐちゃぐちゃにしてくれたりと、本当にばかげたことを平気でやってくれる。
やって欲しいときにやってくれればいいのだけれども、所詮機械なので、奴らの辞書に融通という言葉はない。
今回はbonding時に、デフォルトルーティングを勝手に書き換えてくれるという切ないことをやらかしてくれた。

netstat -r

でルーティングを見ると、

default

の所のNICが「bond0」になっていなければならないところが、「eth1」になっていた。

おかげでgoogleにpingも通らないし、ゲートウェイサーバへのpingも途切れる。
SSHはつながらないという状況。

ということで、NetworkManagerを停止する。

chkconfig NwtworkManager off

これで再起動すれば問題ない。
また、/etc/resolv.confが書き換えられているので、再起動ご修正し、nameserverを追加する。
#vi /etc/resolv.conf
nameserver 192.168.116.1 #←DNSサーバを書く

2010年11月21日日曜日

resolv.confが読めない

resolv.confが読み込めず、名前の解決が出来ない事態に陥った。

原因:表記間違い
対処法:イコール入れるな!

というのも複合的な理由からそういう事態に「自滅していった」というのが正しいかもしれない。
サーバを立て、bondingする為に差したnicを特定しようと、LANケーブルの抜き差しとインターネットへの接続(googleへのping)をしていた時のこと。
4枚ほどnicを差すと、eth0がどれなのか分からないもの。しかもオンボードのnicの方が優先度高そうなのに、そんなこともない。
実際はCPUに対して一番遠いところからeth「X」は振られていくものっぽい。
無事にeth0を見つけ、次々に特定していったのだけれども、何故か「二本LANケーブルを挿していないとインターネットに繋がらない」という
不思議な自体に遭遇した。
片方を抜くと繋がらない。二本じゃなければ繋がらない(因みにこの原因は、片方のLANケーブルが断線していたのと、
macアドレスにひも付けた固定DHcpでIPアドレスを配信していたことが不運な方向に重なったことだった)。
最終的にbondingしてIPを一つに統合固定にするので、二本差さなければ繋がらないのは非常に困る。
ということでネットワーク関係の設定を色々といじっている時にやってしまったのが、resolv.confの表記間違い。
ifcfg-ethXの表記は「項目=値」なのだけれども、resolv.confは「項目『半角スペース』値」。
見事に付けてはいけないイコールを付けてしまい、そこ以降名前が引けなくなってしまった。
色々やりましたよ。
「resolv.conf 読めない」とか「resolv.conf 読み込めない」とか「resolv.conf 引けない」とか「resolv.conf dns 引けない」とか「resolv.conf 読み込めない」とか「resolv.conf 認識しない」とか「ifcfg-eth0 ネームサーバ」とか「名前が引けない linux」とか、
散々google先生を使い倒しましたよ。
もう散々。
で、症状は全く違うけれどもヒットしたポスト
http://centossrv.com/patio/patio.cgi?mode=view&no=982
の最終コメント

Re: DNS のどこかがおかしいのですが... ( No.10 ) このメッセージに返信する

日時: 2008/10/04 05:30
名前: stranger
URL: http://ja.528p.com/

>いえいえ。
>dig で DNS サーバを明示的に指定したとき (@xxx.xxx.xxx.xxx) だけ、正常に返ってくるのです。

resolv.confの改行コードがLR+LFになっていたり
半角スペースのかわりに、全角スペースが挟まっていたりすると
呼び込めないですが、そのような単純なミスはされないと思いますので
わたしのスキルではお答えできません、すみませんね


を見てハッとした。
resolv.confの書き方間違えてる・・・。
初歩的すぎて笑えないミスでした。

2010年11月19日金曜日

linuxでintelのギガビットイーサカードを使いたい。 ~e1000とe1000eドライバを更新する

新しく組んだサーバでインテルのNICであるe1000とe1000eが挙動不審だったので、
ドライバを更新した。
特にe1000eは認識はしているが、LANケーブルをつないでもリンクアップしない。
やれやれ。

環境はcentos5.5で、インストールして即yumによるアップデートしたもの。

intelのサイトに行き、ダウンロード・センター
http://downloadcenter.intel.com/
から、ドライバを取ってくる。

e1000の場合、
選択肢は

製品ファミリー
ネットワーク・コネクティビティー
製品ライン
インテルR デスクトップ・アダプタ
製品名
インテルR PRO/1000 GT デスクトップ・アダプター


多分どれを選んでもチップは同じはず。

更にlinux→ドライバと選択を進める。

etwork Adapter Driver for Gigabit PCI Based Network Connections for Linux

というドライバをダウンロードできるようになるので、ダウンロード。

e1000eは

製品ファミリー
ネットワーク・コネクティビティー
製品ライン
インテルR サーバ・アダプタ
製品名
インテルR PRO/1000 PT サーバー・アダプター


これもチップは同じはず。

Network Adapter Driver for PCI-E Gigabit Network Connections under Linux

をダウンロード。

以下はe1000eのreadmeを参考に。
tar.gzを解凍した際のreadmeを見ながら作業。
1. Move the base driver tar file to the directory of your choice. For
example, use /home/username/e1000e or /usr/local/src/e1000e.

まずはダウンロードファイルのある場所に移動

2. Untar/unzip archive:

解凍。

tar zxf e1000e-x.x.x.tar.gz

3. Change to the driver src directory:

解凍先のディレクトリsrc(ソースコード)に移動。

cd e1000e-x.x.x/src/

4. Compile the driver module:

rootでmake install。

# make install

The binary will be installed as:

/lib/modules//kernel/drivers/net/e1000e/e1000e.[k]o

The install locations listed above are the default locations. They
might not be correct for certain Linux distributions.

まあ、多分大丈夫。

5. Load the module using either the insmod or modprobe command:

modprobeでモジュールをロード。2.6カーネル以降ならフルパスで指定しろ、と言われたが、
僕の環境だとエラーを吐いた。何故。気にせず進む。
更に2.6以降のカーネルなら、一回昔のドライバを消して再ロードしろと言われたので、
再ロードする(rmmod~)。
modprobe e1000e

insmod e1000e

Note that for 2.6 kernels the insmod command can be used if the full
path to the driver module is specified. For example:

insmod /lib/modules//kernel/drivers/net/e1000e/e1000e.ko

With 2.6 based kernels also make sure that older e1000e drivers are
removed from the kernel, before loading the new module:

rmmod e1000e; modprobe e1000e

是で無事繋がった。
うちだと差した段階でethとして認識していたので、6以降はやらなくてよかった。

で、更に調べてみると、なんとrpmに出来ちゃったりするらしい・・・。
http://kiwi-jp.blogspot.com/2007/11/e1000.html

必要なパッケージ
rpm-build
kernel-source

インストール
# rpmbuild -tb e1000-7.6.9.tar.gz
# cd /usr/src/redhat/RPMS/i386
# rpm -ivh ./e1000-7.6.9-1.i386.rpm


たしかにreadmeに書いてある・・・。
To build a binary RPM* package of this driver, run 'rpmbuild -tb
'. Replace with the specific filename
of the driver.


readmeはよく読めということですね。

無事繋がったNIC4枚でbondingし、ファイルサーバを構築。
ネットワーク越しのファイルサーバ速度を測るため、win7上にcrystaldiskmarkをインストールして計測。
sambaでネットワークドライブ化してのスピードは以下の通り。
環境は
centos5.5
3ware 9690saでraid10(システムはraid1)
bondingのmodeはmode=0ラウンドロビン。
-----------------------------------------------------------------------
CrystalDiskMark 3.0 (C) 2007-2010 hiyohiyo
Crystal Dew World : http://crystalmark.info/
-----------------------------------------------------------------------
* MB/s = 1,000,000 byte/s [SATA/300 = 300,000,000 byte/s]

Sequential Read : 21.665 MB/s
Sequential Write : 76.449 MB/s
Random Read 512KB : 22.075 MB/s
Random Write 512KB : 73.868 MB/s
Random Read 4KB (QD=1) : 11.553 MB/s [ 2820.6 IOPS]
Random Write 4KB (QD=1) : 12.102 MB/s [ 2954.6 IOPS]
Random Read 4KB (QD=32) : 28.242 MB/s [ 6895.1 IOPS]
Random Write 4KB (QD=32) : 51.734 MB/s [ 12630.4 IOPS]

Test : 100 MB [V: 5.2% (140.7/2706.4 GB)] (x5)
Date : 2010/11/19 15:13:56
OS : Windows 7 [6.1 Build 7600] (x64)
--------------------------------

readが弱いが、writeはすこぶる速い。
bwmonでのネットワークスピードを見ても、最大70mb/s出ているので間違いない。
因みにe1000e一枚なら、readはCrystalDiskMarkで最大55mb/sまで伸びるので、
bondingした分処理が入って遅くなっていると見た方が良い。
win7上で1gbのファイルをDL、ULした場合、見た感じread35mb/s、write70mb/sくらい。
NIC1枚だと、read/write両方70mb/sを超え、たまに120mb/s超えを見ることが出来る。
70mb/sをbpsに直すと560mbpsか。1000mbpsのLANカードを4枚使っているにしてはしょっぱいなあ。
まあファイルサーバだし、安定して帯域の半分を使えるというのはありがたい。

2008年2月28日木曜日

NICを二枚差しした時のdhcpサーバ

dhcpサーバをnic2枚刺したマシンで動かす際に、ふと疑問が浮かんだ。
「二枚両方に対してipアドレス配布されるんじゃ?」
ということで調べると、矢張りdhcpdの向きを決めておくものがあった。
/etc/sysconfig/dhcpd

DHCPARGS=
があるので、そこに配布させるNICを指定する。

例:DHCPARGS=eth0