WhereAmI  -  ifPlugd  -  WIFI(WEP / WPA)

WhereAmI - ifPlugd - WIFI(WEP / WPA)

版本1.0
作者:Clifford W. Hansen <iam [at] nighthawk [dot] co [dot] za>

本教程介绍如何根据Debian Etch服务器上的位置配置自动网络设置。 Whereami是一个程序,可以在当前界面上运行检查,以检查您所在的网络。 ifplugd是一个守护进程,用于检查网卡上的链接。 它可以上下链接运行程序。

本文档不附带任何形式的保证! 我不会保证这将为您工作!

1初步说明

我正在使用Debian 4.0r1,因此下面的命令将是一个基于Debian的系统。 在本教程中,我使用了网络example.com(work)和flat.lan(home)。 这些设置可能会有所不同,因此您必须在适当的情况下更换它们。 我用sudo运行所有命令。 如果你不使用sudo,那么你将需要成为root。

您应该将所有的接口设置和工作,这包括无线。

2安装应用程序

打开终端并运行:

sudo apt-get install ifplugd whereami wireless-tools fping resolvconf

你会被问到几个问题:

  • 要由ifplugd观看的静态接口:< - eth0
  • 所有其他我离开的默认。

3配置

ifplugd

ifplugd是在安装包后设置的,没有什么需要做的。

我在哪里

Whereami有两个重要的配置文件: /etc/whereami/detect.conf/etc/whereami/whereami.conf

首先设置位置检测: /etc/whereami/detect.conf

# It is a good idea to default to somewhere...
default     undocked
# Test for the presence of an ethernet connection plugged into eth0
testmii     eth0          lan
# Get a list of the access points that we can see
testap      wlan0,scan    wlan
if lan
  # If the testmii at the top was successful
  set INTERFACE eth0
  testdhcp    '*.*.*.*'    dhcp
elif wlan
  # If we found an accesspoint
  set INTERFACE wlan0
  testap    "flat ap"      flat
  testap    "example ap"   example
else
  always at undocked
fi
if dhcp
  testdhcp    192.168.1.*      flat
  testdhcp    10.0.0.*         example
fi

首先,这样做是测试eth0上的网络链接,并将位置设置为lan(如果电缆已插入)。 然后我们检查一个可用的接入点,并将位置设置为wlan(如果有接入点)。

如果我们在lan,然后测试dhcp,然后测试,看看我们的IP是否在一个公认的范围(平/示例)。

如果我们找到一个公认的接入点,然后根据发现的位置设置位置。

现在已经设置了检测,我们可以继续进行设置。 这是在/etc/whereami/whereami.conf中

## This only happens if we are not at a WLAN
!wlan ifconfig wlan0 down
!wlan resolvconf -d wlan0
## This only happens if we are not at a LAN
!lan ifconfig eth1 down
!lan resolvconf -d eth1
## Setup wlan connections
!wlan if /bin/false; then
=any iwconfig wlan0 mode managed
=any ifconfig wlan0 up
## example
=example iwconfig wlan0 essid "example ap"
=example iwconfig wlan0 key <wep key>
## flat
=flat iwpriv wlan0 set AuthMode=WPAPSK
=flat iwpriv wlan0 set EncrypType=TKIP
=flat iwconfig wlan0 essid "flat"
=flat iwpriv wlan0 set WPAPSK=<wpa key>
=flat iwconfig wlan0 essid "flat"
## Get IP from dhcp
=any dhclient wlan0
!wlan fi

我们做的第一件事是减少未被使用的接口。

然后我们检查是否使用wlan,然后设置无线连接。

例如使用WEP,所以您需要用实际的键替换<wep key>

平面使用WPA,所以要获得您将运行的WPA密钥:

wpa_passphrase flat mywpakey

这将给你:

network={
        ssid="flat"
        #psk="mywpakey"
        psk=cb41898729acc21d357d58d3bd5caf7fdda31a2d73ccd7a918ebd9407e4d207d
}

然后用psk的值替换<wpa key>

假设一切都设置正确,运行:

sudo /usr/sbin/whereami

并且您的网络应该配置。

您可以通过以下方式测试:

sudo /sbin/ifconfig

你应该看到类似的东西:

eth0      Link encap:Ethernet  HWaddr 00:00:00:00:00:00
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Interrupt:209 Base address:0xc000
lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
wlan0     Link encap:Ethernet  HWaddr 00:00:00:00:00:00
          inet addr:192.168.1.100  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::214:85ff:feda:716d/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)
          Interrupt:225

4。结论

这不是唯一的方法,我也知道有一个新的应用程序( 网络管理器 )基本上为你做这个,但不幸的是我的无线网卡(RaLink)驱动程序与网络管理器不兼容。

同时在写这篇文章时,我看到了使用这些工具的其他几种方法,但这是最简单的。

我希望这有助于某人在那里,因为我知道这需要我一段时间才能弄清楚,谷歌是你的朋友,但有时它会给你错误的东西(或至少不完整)

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏