鑲在部落格、網頁上的相片 slideshow (投影播放) Part I — Picasa

前些日子,為了要在我的網路相簿首頁上面加上相片的 slideshow,找了很久的,找到了三個解決方案

這三個各有優缺點,不過 Picasa 這個比較容易上手,而且並不需要置放檔案放在自己的 server 上。

所以就先來解說一下怎麼做:

1. 先進入 Picasa 網路相簿,進入想要輪撥的相簿。

2. 在右邊先點選”連結到此相簿”,再點選”內嵌投影播放”。
2009-10-31_113324

3. 在跳出的視窗中選擇好選項後,再將底下的 HTML 碼複製到網頁中就完成了!

2009-10-31_115224

下面就是嵌在網頁上的結果:

這種方法的優點是:簡單、播放時速度快(運用 Google 的好處),另外一個非常好的是,播放器會自動旋轉直立的相片,這個是其他播放器所沒有的。

不過,缺點是無法定義轉場效果、無法在多個相簿間隨機更換照片,也無法重複播放。還有就是還找不到方法和 RSS 結合(只播放最新上傳之照片)。

如何編寫隱藏 iPhone Safari 位址列的網頁

在 iPhone 閱讀一些受歡迎服務的網頁的時候,可以發現,網頁載入後都會把位址列隱藏起來(或是往上推)。這是怎麼做的呢?

有兩種方式。最簡單的方法是在一開始的 <body> 裡面加入以下的 HTML 碼:

<body onload=”setTimeout(function() { window.scrollTo(0, 1) }, 100);”>

但如果無法更改 body 的 HTML code,也可以在網頁中執行以下 javascript:

<script type=”application/x-javascript”>
addEventListener(“load”, function() { setTimeout(hideURLbar, 0); }, false);
function hideURLbar() {
window.scrollTo(0,1);
}
</script>

<script type=”application/x-javascript”>

addEventListener(“load”, function() { setTimeout(hideURLbar, 0); }, false);

function hideURLbar() {

window.scrollTo(0,1);

}

</script>

隱藏前:

with_addbar

隱藏後:

no_addbar

資料來源:http://www.iphonemicrosites.com/tutorials/how-to-hide-the-address-bar-in-mobilesafari/

你想當場上,還是坐板凳的選手?


身為棒球迷,最近有兩則職棒的新聞,我看了之後,有非常深的感觸。第一則是 La New 熊隊的洪一中總教練辭職(or 被撤換?),另一則新聞則是,MLB的紅襪隊,在季後賽的時候,寧願派休息天數不夠的 Lester,卻不派松坂大輔先發。

今年的 La New 熊,我個人覺得已經表現的不錯了,戰績也不差,只是無法打入季後賽罷了。我一直認為洪一中教練的表現是很不錯的。但是為什麼會被換掉呢?我在新聞裡看到了一個訊息,聽說在球季中有球員連署撤換總教練。所以,教練與球員不合,應該是洪總教練離開的原因之一吧!

不管是 La New 的這個案例,或者是紅襪隊的案例,都凸顯出一個問題,那就是球員與教練(球隊)之間的”互信”。

棒球是講求高度團隊合作的運動,比賽的進行是一連串的(教練)戰術下達與(球員)執行。如果教練下達了某個戰術,而球員不願意配合甚至質疑這個戰術,或是執意做自認為對的戰術,那麼,比賽是很難取勝的。因為教練除了擔負勝敗的責任之外,還要負責指揮全局,讓整個團隊互相合作,讓戰術流暢運行。如果有球員不願配合,其他球員便會無所適從,甚至導致失誤、失分、敗戰。

有時在電視上看到教練上場要換下投手,但是投手就是不願意把手中的球交給教練。但是負責全場比賽的是教練,不是這一位投手啊!

球員對於戰術有意見,這是天經地義,很正常的,我想大部分的教練都是很歡迎球員的意見。但是當教練心意已決時,球員應該認真而全心的配合執行,成敗會由當初下達戰術的教練承擔。

無法配合的球員,教練自然不喜歡用,哪怕他是有一身的好工夫,因為教練無法確定自己所下的戰術能否被正確執行。球員如果是執著於自己的意見,也會對教練失去信心。當”互信”消失的時候,往往就會導致失敗。

這些不配合戰術執行,或是配合的無精打采,或是心中無法接受教練安排的球員,輕者被安排坐板凳、降到二軍或小聯盟,重者就是開除或交易。如果不處置這種球員,其他人難保不會受其影響,軍心便會渙散。

而這些球員板凳坐久了,便會失去重要性,因為,往往會有人趁你坐板凳替代你的時候,表現得大放異彩。

職場工作上其實也是,大部分的老闆最重視的就是工作態度與團隊精神。前陣子看到聯發科技的新聞,”股王用人 合作比聰明重要“,很貼切的證明我的想法。

你想當場上,還是坐板凳的選手?

設定 Mac OS Server FTP 服務


1. 打開 “Server Admin”,再依照下圖順序新增 FTP Service。

Screen shot 2009-10-12 at 2.24.47 PM

2. 點選左邊的 “FTP” 服務,再點下方的 “Start FTP” 以啟動 FTP service。

Screen shot 2009-10-12 at 2.35.29 PM

3. 依下圖順序點選 “Protocol Options”。

Screen shot 2009-10-12 at 2.40.32 PM

4. 出現 “Protocol Options” 的視窗之後,點選 “FTP” 分頁,再勾選 “Share this item using FTP”。再點選 “OK”。

Screen shot 2009-10-12 at 2.11.01 PM

5. 最後再點選 “Save” 儲存設定。

Screen shot 2009-10-12 at 2.12.26 PM

至於設定 Home Directory 與 FTP service mode,則不在本文討論範圍。

在 Windows 環境下利用 VNC 遠端控管 Mac OS X Server


Mac OS Server 可以使用 VNC 來遠端控管。不過,在 Mac 上打開這個功能很簡單,要讓 Windows 的 VNC Viewer 連上卻很難,原來是有原因的。

首先我們來看怎麼在 Mac Snow Leopard Server 上面打開這個功能:

1. 進到 “System Preferences”,點選 “Sharing”

Screen shot 2009-10-12 at 12.22.40 PM

2. 進入之後,點選 “Remote Management”

3. 接下來,再點選 “Computer Settings…”

Screen shot 2009-10-12 at 12.22.49 PM

4. 勾選 “VNC viewers may control screen with password:”,並填入認證密碼。再點選 “OK”

Screen shot 2009-10-12 at 12.23.25 PM

這樣就會打開這個功能了。

接下來,就是怎麼連過去的問題了。我試了  UltraVNC 和 RealVNC,一開始都無法連線上去。後來 Google 到一篇文章,裡面提到使用 TightVNC 可以成功連線。於是變下載了 TightVNC 來試。果然就可以了。

不過,心裡面還是覺得無法接受,怎麼會 UltraVNC 不能做呢?後來終於被我測試出來了。

下面就來說明 RealVNC 與 UltraVNC 如何設定(我不知道詳細的原因為何,不過,可用就是了)

RealVNC

1. 點選 “Options”

2009-10-12_132834

2. “Color Level” 選 “Full” 即可。

2009-10-12_133159

UltraVNC

1. 同樣點選 “Options”。

2009-10-12_132851

2. 把 “Auto select best settings” 取消勾選即可。

2009-10-12_133143

Cisco 發佈 IOS 15.0


Cisco 於 10/2 發佈了 IOS 15.0。

昨日在幫客戶查 IPv6 相關資料的時候,進到 Configuration Guide 的選擇頁面的時候,發現,怎麼出現了 IOS 15 M&T 的東西。起初以為是網頁寫錯了。把 12.5 寫成 15,畢竟直接從 12.4 跳到 15,實在非常不可思議。

ios15

不過,點進去之後,發現,真的是直接升級到 15.0 了(正確的版本: 15.0(1)M)。

在 Release Note 裡面,Cisco 說明了這次把之前很多 release 裡的功能一次整合進來,總共整合了 2000 項的功能。

詳情請參考:Release NotesNew and Changed Information

新增的功能有下列:

802.1P CoS Bit Set for PPP and PPPoE Control Frames
AAA Authorization and Authentication Cache
AAA Per-User Scalability
AAA Support for Greater than 8 Login and Exec Auth
AppleTalk Support Discontinuation
ATM Conditional Debug Support
ATM OAM Loopback Mode Detection
ATM OAM Traffic Reduction
ATM PVC F5 OAM Recovery Traps
ATM PVC Trap Enhancements for Segment and End AIS/RDI Failures
ATM QoS MIB
ATM VP Average Traffic Rate
BFD—Static Route Support
BFD—VRF Support
BFD—WAN Interface Support (ATM, FR, POS, and Serial)
BGP Event Based VPN Import
BGP Per Neighbor Graceful Restart Configuration
BGP RT Changes Without PE-CE Neighbor Impact
Calling Station ID Attribute 31
Cisco Services for IPS on IOS
Cisco Unified Border Element Support for SRTP-RTP Internetworking
Configurable SIP Parameters via DHCP
CUBE Support for Configurable Pass-Through of SIP INVITE Parameters
CUBE Support for Generating Out-of-Dialog SIP OPTIONS Ping Messages to Monitor SIP Servers
DHCP Client Forcerenew Message
DHCP Client Option 121
Digitally Signed Cisco Software
DMVPN—Tunnel Health Monitoring and Recovery
DMVPN—Tunnel Health Monitoring and Recovery (Interface Line Control)
DMVPN—Tunnel Health Monitoring and Recovery (Syslog)
Embedded Event Manager (EEM) 3.1
Extended NAS-Port-Type and NAS-Port Support
Flexible NetFlow—Ingress VRF Support
Flexible Netflow—NBAR Application Recognition
FPM—Packaging, eTCDF and Full Packet Search Enhancements
G.722 Codec Support with SRST
GET VPN VRF-Aware GDOI on GM
H.323 Calling Without a Calling Number
IGMP Static Group Range Support
iLBC Codec on SCCP Analog FXS Gateway, Transcoding and Conferencing; G.722-64K for H.323 & SIP
IOS Firewall Support for TRP—Phase 2
IOS IPS with Lightweight Signatures
IP Multicast Load Splitting—Equal Cost Multipath (ECMP) Using S, G and Next-Hop
IPv6: Multicast Address Group Range Support
IS-IS—MPLS LDP Autoconfiguration
IS-IS—MPLS LDP Synchronization
IS-IS MIB
IS-IS Support for an IS-IS Instance per VRF for IP
Lawful Intercept (LI)
Licensing Support for IOS SSLVPNs
MLP LFI over ATM Configuration Scaling
MPLS VPN—BGP Local Convergence
MPLS VPN—Inter-AS Option AB
MTR Support for Multicast
Multi-Part SDP Support for NAT/FPG
Multicast Address Group Range Support
Multicast VRF (MVRF) awareness enables the MIB objects associated with these multicast MIBs to be queried and set for the individual MVRFs configured. In addition, MVRF awareness provides the capability to detect conditions for a trap inside of an MVRF and lookup the correct information for that MVRF; the traps would then be sent to the SNMP manager that is configured for that MVRF.
Multicast VPN Extranet Support
Multicast VPN Extranet VRF Select
NAS-Port ID Format C Enhancement:
NAT Static and Dynamic Route-Map Name-Sharing
NSSA-Only
Option to Disable Volume-Based IPsec Lifetime Rekey
OSPF Graceful Shutdown
OSPF TTL Security Check
OSPFv3 Fast Convergence—LSA and SPF Throttling
OSPFv3 Graceful Restart
PfR EIGRP mGRE DMVPN Hub-and-Spoke Support
PIM Stub
PIM Triggered Joins
PKI High Availability
PPP CLI Enhancement for L2CP Phase III
PPP-Max-Payload and IWF PPPoE Tag Support
PPPoE—Session Limiting on Inner QinQ VLAN
PPPoE Agent Remote ID and DSL Line Characteristics Enhancement
PPPoE Smart Server Selection
Preloaded Routes for Outgoing INVITE on CUBE Using Path Header in REGISTER, Service-Route in 200 OK Response to REGISTER and Outbound Proxy
RSVP Fast Local Repair
RSVP Interface-Based Receiver Proxy
RSVP—VRF Lite Admission Control
RTSP Live Streaming and Max Time for Cisco IOS VoiceXML Browser
Service Advertisement Framework (SAF)
SSHv2 Enhancements for RSA Keys
SSLVPN Client Side Certificate Based Authentication
Support for Adjustable Timers for REGISTRATION Refresh and Retries
Support for Distinctive Ringing on SCCP IOS Gateways
Support for FAC and Speed Dial to Voicemail Using Three Numerical Digits
Support for PAI, PPI, Privacy, P-Called-Party-ID and P-Associated-URI headers on Cisco Unified Border Element
Support for Selectively Using SIP: URI or Tel: URI Formats on Individual SIP Headers
Support on CUBE for Selective Filtering of Outgoing Provisional Responses
Suppress BGP Advertisement for Inactive Routes
Unified Communications Trusted Firewall Control Version II
Voice Quality Enhancements on Cisco Unified Border Element Platforms
VRF Aware RSVP Agent and Gateway
WCCP: VRF Support
Zone Based Firewall (ZBFW) Usability and Manageability Features
  • 802.1P CoS Bit Set for PPP and PPPoE Control Frames
  • AAA Authorization and Authentication Cache
  • AAA Per-User Scalability
  • AAA Support for Greater than 8 Login and Exec Auth
  • AppleTalk Support Discontinuation
  • ATM Conditional Debug Support
  • ATM OAM Loopback Mode Detection
  • ATM OAM Traffic Reduction
  • ATM PVC F5 OAM Recovery Traps
  • ATM PVC Trap Enhancements for Segment and End AIS/RDI Failures
  • ATM QoS MIB
  • ATM VP Average Traffic Rate
  • BFD—Static Route Support
  • BFD—VRF Support
  • BFD—WAN Interface Support (ATM, FR, POS, and Serial)
  • BGP Event Based VPN Import
  • BGP Per Neighbor Graceful Restart Configuration
  • BGP RT Changes Without PE-CE Neighbor Impact
  • Calling Station ID Attribute 31
  • Cisco Services for IPS on IOS
  • Cisco Unified Border Element Support for SRTP-RTP Internetworking
  • Configurable SIP Parameters via DHCP
  • CUBE Support for Configurable Pass-Through of SIP INVITE Parameters
  • CUBE Support for Generating Out-of-Dialog SIP OPTIONS Ping Messages to Monitor SIP Servers
  • DHCP Client Forcerenew Message
  • DHCP Client Option 121
  • Digitally Signed Cisco Software
  • DMVPN—Tunnel Health Monitoring and Recovery
  • DMVPN—Tunnel Health Monitoring and Recovery (Interface Line Control)
  • DMVPN—Tunnel Health Monitoring and Recovery (Syslog)
  • Embedded Event Manager (EEM) 3.1
  • Extended NAS-Port-Type and NAS-Port Support
  • Flexible NetFlow—Ingress VRF Support
  • Flexible Netflow—NBAR Application Recognition
  • FPM—Packaging, eTCDF and Full Packet Search Enhancements
  • G.722 Codec Support with SRST
  • GET VPN VRF-Aware GDOI on GM
  • H.323 Calling Without a Calling Number
  • IGMP Static Group Range Support
  • iLBC Codec on SCCP Analog FXS Gateway, Transcoding and Conferencing; G.722-64K for H.323 & SIP
  • IOS Firewall Support for TRP—Phase 2
  • IOS IPS with Lightweight Signatures
  • IP Multicast Load Splitting—Equal Cost Multipath (ECMP) Using S, G and Next-Hop
  • IPv6: Multicast Address Group Range Support
  • IS-IS—MPLS LDP Autoconfiguration
  • IS-IS—MPLS LDP Synchronization
  • IS-IS MIB
  • IS-IS Support for an IS-IS Instance per VRF for IP
  • Lawful Intercept (LI)
  • Licensing Support for IOS SSLVPNs
  • MLP LFI over ATM Configuration Scaling
  • MPLS VPN—BGP Local Convergence
  • MPLS VPN—Inter-AS Option AB
  • MTR Support for Multicast
  • Multi-Part SDP Support for NAT/FPG
  • Multicast Address Group Range Support
  • Multicast MIB VRF Support
  • Multicast VPN Extranet Support
  • Multicast VPN Extranet VRF Select
  • NAS-Port ID Format C Enhancement:
  • NAT Static and Dynamic Route-Map Name-Sharing
  • NSSA-Only
  • Option to Disable Volume-Based IPsec Lifetime Rekey
  • OSPF Graceful Shutdown
  • OSPF TTL Security Check
  • OSPFv3 Fast Convergence—LSA and SPF Throttling
  • OSPFv3 Graceful Restart
  • PfR EIGRP mGRE DMVPN Hub-and-Spoke Support
  • PIM Stub
  • PIM Triggered Joins
  • PKI High Availability
  • PPP CLI Enhancement for L2CP Phase III
  • PPP-Max-Payload and IWF PPPoE Tag Support
  • PPPoE—Session Limiting on Inner QinQ VLAN
  • PPPoE Agent Remote ID and DSL Line Characteristics Enhancement
  • PPPoE Smart Server Selection
  • Preloaded Routes for Outgoing INVITE on CUBE Using Path Header in REGISTER, Service-Route in 200 OK Response to REGISTER and Outbound Proxy
  • RSVP Fast Local Repair
  • RSVP Interface-Based Receiver Proxy
  • RSVP—VRF Lite Admission Control
  • RTSP Live Streaming and Max Time for Cisco IOS VoiceXML Browser
  • Service Advertisement Framework (SAF)
  • SSHv2 Enhancements for RSA Keys
  • SSLVPN Client Side Certificate Based Authentication
  • Support for Adjustable Timers for REGISTRATION Refresh and Retries
  • Support for Distinctive Ringing on SCCP IOS Gateways
  • Support for FAC and Speed Dial to Voicemail Using Three Numerical Digits
  • Support for PAI, PPI, Privacy, P-Called-Party-ID and P-Associated-URI headers on Cisco Unified Border Element
  • Support for Selectively Using SIP: URI or Tel: URI Formats on Individual SIP Headers
  • Support on CUBE for Selective Filtering of Outgoing Provisional Responses
  • Suppress BGP Advertisement for Inactive Routes
  • Unified Communications Trusted Firewall Control Version II
  • Voice Quality Enhancements on Cisco Unified Border Element Platforms
  • VRF Aware RSVP Agent and Gateway
  • WCCP: VRF Support
  • Zone Based Firewall (ZBFW) Usability and Manageability Features

IPv6 位址的取得 (Autoconfiguration and DHCPv6)


和 IPv4 相同,介面的 IPv6 位址可以是手動設定(static)或是自動設定。

手動設定沒什麼好說的。這篇文章要講的是自動設定的種類與方法。

在 IPv6 的環境裡,Router 的介面會定期的使用 multicast 發出 Router Advertisement (RA)。

這個 RA 包含了這個網路(網段)的 ipv6 prefix 資訊。

如果我們把介面設定成 IP 位址自動設定(autoconfiguration),電腦的網路卡收到 RA 之後,會利用這個 Prefix 再加上網路卡的 Interface ID (通常是使用 EUI-64 來取得) 組合成 128 bits 的 IPv6 位址。

But wait! 只有 IPv6 位址和 default gateway,上網會寸步難行吧。至少還需要 DNS server 的位址啊!

如果我們來看 Router Advertisement 的格式 (RFC 4861) ,你會發現,RA 真的只會給 IPv6 prefix 而已。但是,如何讓電腦順利的上網呢?

我們把 RA 的格式拿出來看:

raformat

紅框的地方,叫做 Router Advertisement Option (上圖為舊的資訊,最新的定義在 RFC5175,不過上圖足以解釋本文)。我們要看的就是其中的 M bit 與 O bit。

M: Managed Address Configuration 這個 bit 如果是 1,代表要請電腦另外再去跟 DHCPv6 要 IPv6 Prefix

O: Other Configuration 這個 bit 如果是 1,代表請電腦去跟 DHCPv6 要 DNS 等等資訊。

我們常聽到的 stateful DHCPv6 與 stateless DHCPv6,就是由 M bit 與 O bit 的組合不同而來的。

  1. M=1, O=0 or 1: 所有資訊(包括 Prefix、DNS等等資訊)都請電腦使用 DHCPv6 取得。(Stateful DHCPv6)
  2. M=0, O=1: 使用 RA 裡面的 Prefix,但是 DNS 等等資訊請電腦使用 DHCPv6 取得。(Stateless DHCPv6)
  3. M=0, O=0: 電腦將只得到 Prefix,無法取得 DNS 等資訊。(Stateless autoconfiguration)

所謂的 stateful 就是必須要由 server 去動態維護、保留其對應狀態的資訊。會有這種需求的,就是 IPv6 位址的指派、對應。

而 stateless 則是不須動態維護的資訊,如 DNS 等資訊,因為這些不會動態改變,都是固定的資訊。

所以當 prefix 由 DHCPv6 來提供的時候,因為 DHCPv6 server 會有對應表(binding table),所以這種就叫 stateful DHCPv6。

而如果 prefix 是由 router 提供,因為 router 不會留存這個 binding table,所以這種方式就叫做 stateless autoconfiguration or stateless DHCPv6。

那麼,Cisco IOS 如何設定 M bit 與 O bit 呢(也就是如何選擇 stateful DHCPv6/stateless DHCPv6/stateless autoconfiguration)?

設定 M bit:

Router(config-if)# ipv6 nd managed-config-flag

設定 O bit:

Router(config-if)# ipv6 nd other-config-flag

至於,有沒有方法不須 DHCPv6 直接從 RA 裡得到 DNS 資訊?有,不過目前(Oct. 2009)還不是標準,請參見 RFC5006。在 router 端,Linux/BSD上的 radvd (Router Advertisement Deamon)有支援 RFC 5006。在 client 端,ndisc6 裡的 rdnssd 有支援 RFC5006。不過,我都沒有試過。Cisco/Juniper 也都尚未支援 RFC5006。