2011年10月31日 星期一

Enabling VLAN tag capture for Broadcom Ethernet Adapter


There is a registry key under HKLM\SYSTEM\CurrentControlSet\control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}\00xx that can be set to  cause the driver and chip not to strip the 802.1Q headers. In order to set that key, you need to find the right instance of the driver in Registry Editor and set that key for it. You  can do this by doing following:
1.    Run the Registry Editor (regedit)
2.    Hit CTRL+Home to go to the top of the registry
3.    Hit F3 to bring up a search
4.     Search for  TxCoalescingTicks - actually a search for txcoal will do

This should take you to something like:
HKLM\SYSTEM\CurrentControlSet\control\Class\{4D36E972-E325-11CE-BFC1-08002bE10318}\00xx

5.    Right-click on a bit of white space near the TxCoalescingTicks field.
6.    Enter "PreserveVlanInfoInRxPacket" –
a.    Then highlight the text PreserveVlanInfoInRxPacket and copy it to the clipboard – you’ll need it again later.
7.    Give the newly created field (PreserveVlanInfoInRxPacket) the value "1".
8.    Hit F3 to repeat the search – goto step 5 again.  Repeat until you reach the beginning again.

9.    Reboot the PC

REF:www.cisco.com/en/US/prod/voicesw/custcosw/ps5693/ps14/prod_system_requirements0900aecd800e3149.pdf
Also: http://wiki.wireshark.org/CaptureSetup/VLAN

--------------------------------------------------------------------------------------------------------------
某台伺服器上要跑一個軟體用pcap抓封包,系統用的是Windows,但是Windows下的驅動過濾了8021q的協議header,導致軟體不能正常工作。 Google了一下, Wireshark的Wiki說要改註冊表
但是經過測試,他給出的方法不能用,至少在現在的驅動上不行​​。 文章中提示的TxCoalescingTicks在註冊表裡面根本找不到!!

在驅動文件bxvbda.sys裡找到了“keep_vlan_tag”的字樣,於是順藤摸瓜發現了這個位置:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4D36E97D-E325-11CE-BFC1-08002BE10318}\0051 最後這個數字可能不太相同,不過可以搜索“*ReceiveBuffers”試試看。
找到這個鍵值以後就好說了,添加一個REG_SZ 名稱為keep_vlan_tag 值為1的項,重啟。 就可以在Wireshark裡抓到VLAN TAG了。

就是這樣。 驅動版本是5.2.14.0 網卡是Broadcom BCM5708C NetXtreme II

2011年10月28日 星期五

ARP Proxy


        ARP
代理就是我們通常說的ARP Proxy,它實際是通過使用一個主機(通常為router)來作為指定的設備對另一設備作出ARP請求的response
    

    假設有網絡拓撲如上圖所示,PC1/PC2組成的局域網1通過路由器與PC3/PC4組成的局域網2連接在一起。現在PC1要給PC4發一份Packet,具體過程如下(假定Router已開啟ARP Proxy功能)
        1).PC1首先要判斷PC4是否與自己在同一個網絡。因為PC1IP掩碼為16位,所有IP地址在128.18.0.1128.18.255.255之間(包含128.18.0.1128.18.255.255)PC都被認為與PC1屬於同一個網絡。
       2).PC4IP地址為128.18.170.11,在上述IP地址範圍之內,因此PC1認為有可直達PC4的路由,因此,PC1會直接發送ARP Request Packet,請求PC4MAC地址。ARP Request packet的源IPPC1IP,源MACPC1MAC,目的IPPC4IP,目的MAC為全0(表示不知道對方MAC)
       3).ARP Request packet在以太網中被封裝成二層 packet時,幀頭中的源MACPC1MAC地址,目的MAC為全1的廣播地址。
       4).PC4IP地址為128.18.170.11IP地址掩碼為24位,所以在PC4看來,IP地址為128.18.178.100PC1,與它不在同一個網絡,所以網絡中,沒有從PC1PC4的直達路由。ARP請求 packetPC1發出後,會由Router接收,Router查看自己的路由表,發現從自己的另外一個端口可以到達PC4,於是代替PC4PC1回復一個ARP Reply unicast packet
   雖然Router能請求到PC4MAC,但是它不會將PC4MAC直接告訴PC1。而是將自身的MAC提供給PC1,告訴PC1,可以接收它的數據報,在PC1看來,它收到的MAC就是PC4MAC(其實是PC4MAC)
      5).PC1發出數據 packet,源MACIP都是自己的MACIP,目的IPPC1IP地址,目的MACRouterMACRouter收到來自PC1 packet後,會將目的MAC更換成PC4MAC,目的IP不變,仍然是PC4IP地址,源IP也不變,仍然是PC1IP地址,而源MAC則更換成自己與PC4相連的那個端口MAC地址。然後把重新封裝後的 packet發給PC4,從而完成ARP代理功能。

   備註:Router的高速buffer中會存放與Router的各出接口相連的PC MACIP信息,若事先沒有,Router會定期發出ARP廣播 packet請求各個PCMAC

      ARP代理的前提條件:
      1).網絡上的主機沒有設置Default Gateway
      2).網絡上的主機不支持動態路由協議;

---------------------------------------------------------------------------------------------------------

Proxy ARP with Linux

www.internetsolver.com | Other Linux Documents 

By David Weis with Internet Solver, LLC
AKA: firewalling a subnet with a single IP address

Why and How

Proxy ARP basically means that a particular machine (such as a firewall) will respond to ARP requests for hosts other than itself. This can be used to make a firewall mostly disappear from the machines on a network.
For an example, say you have a /28 subnet from your ISP that is routed through a Cisco router. Your router appears at the IP of x.x.x.97 with a network address of x.x.x.96 and a broadcast address of x.x.x.111. This leaves a usable chunk of 14 addresses for your hosts.
If you wanted to firewall these hosts from the internet without using proxy arp, you would need to either subnet your addresses and lose two more addresses for the new network and broadcast, plus half of your remaining IP's would be in the non-firewalled half.
Another method would be to have the firewall do port forwarding between all of the addresses to non-routed IP's (192.168.x.x) for your servers. Done properly, this would be okay. It isn't as transparent and may break some protocols like active FTP unless the firewall will compensate.
By using Proxy ARP, you can set up your machines in a DMZ to separate them from your client machines. This is also the least invasive method to set up, since you can keep the same IP's on all of the servers as you had when things weren't firewalled.
To set up the network, you will need a machine with at least two NIC's, three if you want to also masquerade client machines for outgoing access. Some variations on how I configured this are surely possible, but this is how I know how to do it and know that it does work. You will need a 2.4 series kernel, theiproute2 utility, and a recent iptables userspace program.

Doing it

You will need to set up the machine with the software mentioned above. Be sure to compile netfilter into the kernel by selecting yes for "Network Packet Filtering" under the "Networking Options" section. All of the pieces associated with netfilter are listed under "Netfilter Configuration" further down the list. It is probably easier to build each of the options into the kernel than use modules, there should be +- 22 choices to turn on.
Build your kernel, install it, and boot to make sure it functions. You should see some lines like
ip_conntrack (2046 buckets, 16368 max)
ip_tables: (c)2000 Netfilter core team
in the kernel boot messages (use dmesg if they went by too fast).
After you have your kernel running, build and install iproute2 and iptables. Instructions for doing so are in the packages themselves. Your distribution may have included them, but they are probably older ones. Grab the newest ones to make sure you have the right versions. Test them by running ip and iptablesand see if they print something. Don't continue until they do.
After you have the above steps done, you will need to configure your network cards. This step should be done off of the network since you may end up with some conflicting addresses. Give two NIC's identical IP addresses, subnet masks, and gateways. The IP you choose needs to be an unused address on your network. In my case, I used x.x.x.98, since my router is at x.x.x.97. You could actually use about any address on the wire that isn't in use.
There is an example configuration available for download below that uses three NIC's, one for an internal 192.168.x.x network for client machines. If you want to create the file yourself, here are the steps. First off, enable Proxy ARP in the kernel. We'll assume your cards are eth0 and eth1.
echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp
echo 1 > /proc/sys/net/ipv4/conf/eth1/proxy_arp
Next, you will tell the kernel how to get to each of the two networks. When you are done, there will be a crossover cable from one NIC on your firewall to your router and the other NIC will be connected to the port on your hub/switch that the router was previously plugged in to. The kernel now thinks that the same machines are on each wire, which definitely won't work. We'll set it straight with these commands:
ip route del x.x.x.96/28 dev eth0
ip route del x.x.x.96/28 dev eth1
ip route add x.x.x.97 dev eth0
ip route add x.x.x.96/28 dev eth1
What we've done is first say that no network is reachable via either NIC, then say that the router (x.x.x.97) is connected to eth0 and the rest of your servers are hooked to eth1. I would suggest using this setup (router on eth0, servers on eth1) since the downloadable example assumes that.
We'll now use the ip command to verify our work. Running ip addr should yield something like this:
1: lo:  mtu 3904 qdisc noqueue 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 brd 127.255.255.255 scope host lo
2: eth0:  mtu 1500 qdisc pfifo_fast qlen 100
    link/ether 00:90:27:3f:23:9c brd ff:ff:ff:ff:ff:ff
    inet x.x.x.98/28 brd x.x.x.111 scope global eth0
3: eth1:  mtu 1500 qdisc pfifo_fast qlen 100
    link/ether 00:90:27:3f:4d:6c brd ff:ff:ff:ff:ff:ff
    inet x.x.x.98/28 brd x.x.x.111 scope global eth1
and ip route should show this
x.x.x.98 dev eth0  scope link 
x.x.x.98 dev eth1  scope link 
x.x.x.97 dev eth0  scope link 
x.x.x.96/28 dev eth1  scope link 
127.0.0.0/8 dev lo  scope link 
default via x.x.x.97 dev eth0 
After the routing tables and IP addresses look okay, you can turn on IP forwarding in the kernel by doing this:
echo 1 > /proc/sys/net/ipv4/ip_forward
At this point, you could take your new firewall, hook up the ethernet cables correctly, and have identical functionality (hopefully) to what you have now with no firewalling. Of course, this machine doesn't really do any firewalling, grab the IP tables howto from the link below and set up your tables. You can also use the example script provided below.

Troubleshooting

First, verify that you can ping all of the machines from the firewall, including the router. The main problem you can run into is that the router will probably cache the ARP entries for the machines for quite a while. The easiest way to solve that is to kill the power to your router and plug it back in. Try to ping again.
Let me know if you have any problems, there is a link to my email address at the bottom of the page, along with a place that you can post questions directly on this page.

Downloads

Other Sources of Information

Other Stuff

This is a reply to a question on comp.os.linux.networking where I first explained how to do some of this. Above is a cleaned up response. It's here as a source for my copy and paste. :-)
What you want is called proxy-arp. You would set the two NICS to both
have the same real IP address, such as .55 in your second diagram. Then
you do this
echo 1 > /proc/sys/net/ipv4/conf/eth0/proxy_arp
echo 1 > /proc/sys/net/ipv4/conf/eth1/proxy_arp

You will need to use the 2.4 kernel and get iproute2, then try these
commands

ip route del x.x.x.32/27 dev eth0
ip route del x.x.x.32/27 dev eth1
ip route add x.x.x.33 dev eth0
ip route add x.x.x.32/27 dev eth1

This tells the kernel that the router is the only thing reachable via
eth0 and the rest of the network is on eth1 (change as needed). This
will make the linux machine respond for the machines on either side.
Finally, do this

echo 1 > /proc/sys/net/ipv4/ip_forward

to enable routing. Either wait a while for the arp caches to expire or
restart your router. At that point you should be able to get back and
forth between the router and the other servers on the network. If you
look at your arp cache on a server, it will show the mac address of the
router as the mac address of eth1 on your linux firewall.

After you have this layer working, you can add your rules.

Good luck!
dave

"Norman D. Megill" wrote:
>
> I want to set up an IP filter in the following setup.  Right now every
> machine is connected directly to the internet with static (real) IP's in
> subnet X.Y.Z.32/27.  X.Y.Z.35-X.Y.Z.54 are DHCP'd with an NT server and
> the others are hard-configured in various machines.  There is currently
> no firewalling.
>
> Current setup:
>                                                          internet
>    other X.Y.Z.32/27 ------------------------------------ISP feed
>      NT/W98 machines      |                            X.Y.Z.32/27
>                           |                            gw=X.Y.Z.33
>                           |
>                           |
>                     NT web server
>                       X.Y.Z.60
>
> The management of the Windows-only office is more paranoid about Linux
> than about security, and furthermore wants no work disruption or risk
> caused by changing IP setups on various machines.  To demo an initial
> firewall, it must be "transparent" so that if it has a problem the
> internal network cable can be instantly unplugged from Linux and hooked
> back to the ISP feed to restore the current configuration.  My idea is
> that once we get it working we can slowly start to tighten things up,
> move the machines to masq'd/forwarded 192.168.x.x's, etc.
>
> Without getting into the security problems that will be initially
> present with this "firewall", if I don't get a "transparent" mode to
> work there is not going to be any firewall at all, or at best it might
> be an NT machine for management comfort.  The current setup has been in
> place for a few years with no apparent security problems, and "if it
> ain't broke don't fix it".
>
> Because both sides of the firewall are on the same subnet, I have not
> been able to get it to work after experimenting with all kinds of
> routing and ip setups.  I am starting to look at bridging, which may be
> the only solution, but the fact that it (I think) sets the NICs to
> promiscuous mode seems against the spirit of the firewall.  But before I
> give up I'll ask about it here.
>
> I am using RedHat 7.0 with kernel 2.2.16 and RH security updates.
>
> Experiment 1:
>                                   eth1       eth0
>    other X.Y.Z.32/27 ----------------- Linux -----------ISP feed
>      NT/W98 machines      |     X.Y.Z.55   X.Y.Z.56    X.Y.Z.32/27
>                           |                            gw=X.Y.Z.33
>                           |
>                           |
>                     NT web server
>                       X.Y.Z.60
>
> Experiment #1 doesn't work because a packet from the internet to
> the X.Y.Z.60 server makes the ISP gateway think that X.Y.Z.60 is
> on its local cable, and it sits there doing "arp who-has" for X.Y.Z.60.
> Of course Linux never responds because it only looks for packets
> to X.Y.Z.56.
>
> Experiment 2:  Same as Experiment 1 but added X.Y.Z.33 to eth1:0 and
> added X.Y.Z.60 to eth0:0
>
> Experiment #2 allows Linux to see the gateway arp's, but it seems to
> think the packets are for itself and I have found no way to
> transparently forward them to the eth1 side.
>
> Now, it seems that what I want should be theoretical possible, but I
> can't figure out how to make Linux can do it (without promiscuous
> bridging).  Adding to my puzzlement is that Figure 3-2 on
>
>    http://www.bb-zone.com/FWHowTo/chapter3.html
>
> shows the exact setup I want.  The author seems to say that the
> FW_ROUTER variable just bypasses the spoofing filter, but that would not
> solve the problem (since for now I have ipchains completely open).  He
> references "the SuSE firewall script," but there is no FW_ROUTER
> variable in SuSE's firewals-2.6-33.rpm if that's the script he means.
>
> Thanks for any advice.

2011年10月21日 星期五

Windows 7-Intel 網卡支援 VLAN Tag



前言

因為需要測試該 Switch 所出來的 Tag Port 到底能否正常運作,在 Windows 7 中所使用的 Intel 82566DM-2 網卡可以在更新驅動及安裝進階工具後即可測試 VLAN Tag 功能。

實作環境

  • Windows 7 旗艦版 x64
  • Intel 82566DM-2 Gigabit Network Connection

安裝及設定

  1. 至 [Intel 下載中心 - Intel® 82566 Gigabit 乙太網路 PHY] 下載,因為本次實作採用的是 Windows 7 x64 所以下載 PROWinx64.exe。
  2. 安裝後至【裝置管理員】 查看網卡內容,會多了一堆頁籤可以選擇,其中【VLAN】頁籤就是本次實作的主角。
  3. 點選【VLAN】後按下【新增】,在彈出視窗中填入【VLAN ID (即 Tag VID)】而 VLAN 名稱會自已填好,例如 VLAN ID 為 110 時則 VLAN 名稱會為 VLAN110。
  4. 設定完成後按下【確定】,系統會自動新增一片網卡,網卡的結尾名稱就是剛才的 VLAN 名稱,例如 【Intel 82566DM-2 Gigabit Network Connection - VLAN:VLAN110】。
  5. 此時便可至該網卡內設定屬於該 Tag 網段內的固定 IP 位址即可驗證 Tag Port 設定是否正確。

Windows 7-Realtek 網卡支援 VLAN Tag



前言

因為需要測試該 Switch 所出來的 Tag Port 到底能否正常運作,在 Windows 7 中所使用的 Realtek RTL8169 網卡可以在更新驅動及下載 Diagnostic 工具後即可測試。

實作環境

  • Windows 7 專業版
  • Realtek RTL8169 網卡

安裝及設定

  1. 下載 [REALTEK - Windows Diagnostic Program] 工具後進行安裝
  2. 安裝後查看 Realtek 網卡內容應該會多了三個驅動,分別是 【Realtek Teaming、VLAN、NDIS Protocol Driver】
  3. 開啟【Realtek Ethernet Diagnostic Utility】後選擇【虛擬區域網路】,按下【增加】,填入【VLAN ID (即 Tag VID)】
  4. 當增加後系統會新增一片網卡,在該網卡內設定屬於該 Tag 網段內的固定 IP 位址即可驗證 Tag Port 設定是否正確
  

參考資料 不自量力的 Weithenn - Windows 7-Realtek 網卡支援 VLAN Tag

2011年10月19日 星期三

DHCPv4 Option Summary


Option Name
Code
ISC Option Name
Microsoft Option Name
Descritpion
All subnets are local
27
all-subnets-local
All subnets are local
0 specifies that the client should assume that some IP subnets have smaller MTUs; 1 specifies that all subnets have same MTU as subnet to which the client is connected.
ARP cache timeout
35
arp-cache-timeout
ARP cache Timeout
Timeout (in seconds) for ARP cache entries
Autoconfiguration
116
autoconfiguration

0 specifies that the client should not perform link-local IP address autoconfiguration; 1 specifies that the client should perform autoconfiguration
Boot file size
13
boot-size
Boot file size
Size of the client bootfile in 512-byte blocks
Boot file name
67
bootfile-name
Boot file name
Name of the bootfile to use when the file field is used to carry options
Broadcast address
28
Broadcast-address
Broadcast address
The broadcast address for the subnet to which the client is attached.
Client identifier
61
Dhcp-client-identifier
Client’s unique identifier

Cookie server
8
Cookie-servers
Cookie servers
Cookie servers
Default IP TTL
23
Default-ip-ttl
Default Time-to-Live
Default TTL client should use for outgoing  datagrams
Dhcp authentication option
90
authentication

Option used to authenticate DHCP packets transmitted by client and servers
DHCP message type
53
Dhcp-message-type

Identifies the type of the DHCP message
Domain name servers
6
Domain-name-servers
Dns server
List of DNS server IP addresses
Domain name
15
Domain-name
Domain name
Default name for DNS name resolution.
End 
255
Option-end

Indicates end of options in field
Ethernet encapsulation
36
Ieee802-3-encapsulation
Ethernet encapsulation
0 specifies Ethernet version 2 encapsulation; 1 specifies IEEE 802.3
Extensions path
18
Extensions-path
Extensions path
The name of the file containing additional options to be interpreted according to RFC2132 format
Finger server
73
Finger-server
Finger servers
List of finger server IP addresses
Host name
12
Host-name
Host name
Client hostname
Impress server
10
Impress-servers
Impress servers
Imagen impress printer servers
Interface MTU
26
Interface-mtu
MTU option
Value of MTU that the client should use for this interface
Length of DHCP lease
51
Dhcp-lease-time

Lease duration (expressed in seconds) for the assigned IP address
IP forwarding
19
Ip-forwarding
IP Layer Forwarding
0 specifies that datagram forwarding between interfaces is to be disabled; 1 specifies that forwarding is to be enabled
IRC Server
74
Irc-server
Internet relay chat (IRC) servers
List of internet relay chat server IP address
Log server
7
Log-servers
Log servers
MIT-LCS log servers
LPR server
9
Lpr-servers
LPR Servers
LPDP servers
Mask supplier
30
Mask-supplier
Mask Supplier Option
0 specifies that the client should not respond to ICMP subnet mask request messages; 1 specifies that the client should respond.
Maximum datagram
22
Max-dgram-reassembly
Max DG Reassembly Size
Maximum size of datagram that reassembly the client should expect to reassemble
Maximum DHCP
57
Dhcp-max-message-size

Maximum DHCP message size message size accepted by the client
Merit dump file
14
Merit-dump
Merit dump file
Name of file for memory dump
Message
56
Dhcp-message

Message from the server to be displayed to the user by the client
Mobile IP home agents
68
Mobile-ip-home-agents
Mobile IP home agents
List of mobile IP home agents
Name server
5
Ien116-name-servers
Name Servers
IEN 116 name servers
Name Service
117
Name-service-search-order

Ordered list of name service types that the client should use initial netware directory server (NDS) for client
NDS Server
85
Nds-servers

List of NDS servers
NDS tree name
86
Nds-tree-name

NDS tree name for the client to use.
NetBIOS over TCP/IP
45
Netbios-dd-server
NetBIOS over TCP/IP NBDD
List of NetBIOS Datagram data-Distribution(NBDD) servers
NetBIOS over TCP/IP name server
44
Netbios-name-servers
WINS/NBNS servers
List of NetBIOS Name Server(NBNS) IP addresses.

Option Name
Code
ISC Option Name
Microsoft Option Name
Descritpion
NetBIOS over TCP/IP type
46
Netbios-node-type
WINS/NBT type
Client’s NetBIOS over TCP/IP node
NetBIOS over TCP/IP scope
47
Netbios-scope
NetBIOS scope ID
Client’s NetBIOS over TCP/IP scope
NetWare/IP domain
62
Nwip-domain

Name of NetWare/IP domain for client
NetWare/IP information
63
Nwip.nsq-broadcast nwip.preferred-dss nwip.nearest-nwip-server nwip.autoretries nwip.autoretry-secs nwip.nwip-1-1 nwip.primary-dss

NetWare/IP parameters
NIS domain Name
40
Nis-domain
NIS Domain Name
Client’s Network Information Service (NIS) domain
NIS Servers
41
Nis-servers
NIS Servers
List of NIS servers
NIS+ domain Name
64
Nisplus-domain
NIS+ Domain Name
Client’s Network information Server+(NIS+) domain
NIS+ servers
65
Nisplus-servers
Nis+ servers
List of NIS+ server IP addresses
NNTP server
71
nntp-server
Network News Transport Protocol (NNTP) servers
List of NNTP servers
Non-local source routing
20
Non-local-source-routing
Non-local source routing
0 specifies that forwarding of datagrams with nonlocal source routes is to be disallowed; 1 specifies that forwarding of sub datagrams is to be allowed
NTP servers
42
Ntp-servers
NTP server
Lsit of network Time Protocol (NTP) servers
Option overload
52
Dhcp-option-overload

Specifies whether file and sname fields are used to carry options
Pad
0
Pad

Carries no data
Parameters request list
55
Dhcp-parameter-request-list

List of options requested by the client
Path MTU aging
24
Path-mtu-aging-seconds
Path MTU Aging Timeout
Timeout(in seconds) for aging PMTU values
Path MTU plateau table
25
Path-mtu-plateau-table
Path MTU Plateau Table
List of MTU sizes for PMTU discovery.
Perform mask discovery
29
Perform-mask-discovery
Perform mask discovery
0 specifies that the client should not perform ICMP subnet mask discovery; 1 specifies that the client should perform subnet mask discovery
Policy filter
21
Policy-filter
Policy Filter Masks
List of policy filters for nonlocal source routing.
POP3 server
70
Pop-server (pop3) server IP
Post office protocol (pop3) servers
List of post office protocol 3 addresses
Requested IP address
50
Dhcp-requested-address

IP address requested by the client.
Relay agent information the relay option
82
Relay-agent-information

Additional information supplied by agent
Resource location servers
11
Resource-location-servers servers
Resource location servers
Resource location protocol
Root path
17
Root-path
Root path
Name of the client’s root disk.
Router solicitation for router
32
Router-solicitation-address
Router solicitation
The address the client should use address discovery
Routers
3
routers
router
IP addresses of default routers to use on the client’s network segment
Server identifier
54
Dhcp-server-identifier

The IP address of the DHCP server
SLP Directory Agent
78
Slp-directory-agent

The service location Protocol service scope
SMTP server
69
Smtp-server
Simple mail transport protocol (SMTP) servers
List of simple mail transport protocol (SMTP) servers
Static route
33
Static-routes
Static route option
List of static routes; each static route includes a destination
Streettalk directory assistance server
76
Streettalk-directory-assistance -server
Streettalk directory assistance (STDA) servers
List of STDA servers
Subnet mask
1
Subnet-mask

The subnet mask for the network segment to which the client is connected.
Subnet selection option
118
Subnet-selection

The subnet number to use in selecting the client IP address.
Swap server
16
Swap-server
Swap server
The swap server for the client
T1
58
Dhcp-renewal-time

The time, in seconds ,until the client should renew the lease on the assigned address.
T2
59
Dhcp-rebinding-time

The time, in seconds, until the client should rebind the lease on the assigned address.
TCP default TTL
37
Default-tcp-ttl
Default TTL option
The default TTL for TCP segments
TCP keepalive garbage
39
Tcp-keepalive-garbage
Keepalive Garbage
0 specifies that the client should not send a garbage byte with a TCP keepalive message; 1 specifies that the client should send a garbage byte
TCP keepalive interval
38
Tcp-keepalive-interval
Keepalive interval
The time, in seconds, to wait before sending a keepalive message on a TCP connection
TFTP server name
66
Tftp-server-name
Boot server Host name
The name of the TFTP serve r to use when the Sname field is used to carry options
Time offset
2
Time-offset
Time offset
The time offset, in seconds, from coordinated universal time (UTC) for the client’s network segment
Time server
4
Time-servers
Time server
The time server’s IP addresses
Trailer
34
Trailer-encapsulation
Trailer encapsulation
0 specifies that the client should not negotiate the use of trailers through ARP; 1 specifies that the client should negotiate the use of trailers.
UAP servers
98
Uap-servers

List of URLs specifying User authentication protocol servers
User class
77
User class

User class information
Vendor class identifier
60
Vendor-class-identifier

Vendor identification
Vendor specific information
43
Vendor-encapsulated-options
Vendor specific info
Vendor-specific information
WWW server
72
www-server
World wide web(WWW) servers
List of world web server IP addresses
X window system display managers
49
x-display-managers
X window system display
List of X window system display manager
X window system font server
48
Font-servers
X window system font
List of x window system font servers

How to use simple speedtest in RaspberryPi CLI

  pi@ChunchaiRPI2:/tmp $  wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py --2023-06-26 10:4...