9 min read

我擋廣告的三種方法

不管政府能不能履行職責,身為數位公民,你我都應該主動抵抗具有不良行為的廣告,維護自己的自主性與隱私權。以下是幾種我擋廣告的方式。
我擋廣告的三種方法
Photo by Nathan Dumlao / Unsplash

廣告,消費主義所必然帶來的衍生物,或應該說廣告就是消費主義的引擎。畢竟需求是被創造出來的,被廣告創造出來的。所以說廣告就消費主義社會而言,確實是不可或缺的一部份。

但廣告在這個世紀,已經慢慢地長成不只是廣告的東西了。它長成了平台,再長成人工智慧,而且是那種跟蹤騷擾偷窺都來的罪犯。更糟糕的是,我們的國家對它幾乎是束手無策(歡迎關注《數位經濟競爭政策白皮書》的發展)。

不過,不管政府能不能履行職責,身為數位公民,你我都應該主動抵抗具有不良行為的廣告,維護自己的自主性與隱私權。以下是幾種我擋廣告的方式。

別再當免費仔

俗話說,免錢的最貴,因為你不知道你交換出去的是什麼。

在資本主義的概念底下,免費仔並不是顧客,而是免錢的打工仔。打什麼工?看廣告的工作。看幾十秒的廣告,換得幾分鐘的影片或遊戲。而你交出去的,就是你的行為。不只是你的行為模式被分析,你的行為本身也可能被操控。畢竟廣告最大的目的就是要改變一個人的消費行為——在這個十年,廣告改變的甚至不只是消費行為,還有政治行為等等。

為什麼不把一點餐費拿來給線上服務付費呢?花錢不一定是大爺,但花錢一定就是顧客,而顧客絕對比免費打工仔的地位好太多。首先,你不用再看廣告(至少平台廣告的部分)。再來,服務提供方就會有義務去把你服務好,因為那是你跟它的合約。免費仔叫再大聲,服務方都可以不理你,因為你就只是個免費仔,活該看廣告浪費生命。

但當然,每個人或多或少都是免費仔,畢竟對很多服務商來說,使用者做為免費打工仔比做為顧客還要更有價值。他們寧願你當免費仔,也不要你付費。舉例來說,Google 搜尋只有免費版,沒有付費版。Facebook 動態消息只有免費版,沒有付費版。但也有很多服務是有付費版的,比如說 YouTube。要發表內容也不是只能在 Facebook 上面,更可以選擇付費的選項,比如說我現在正在用的部落格+電子報平台 Ghost(Pro)。

不用看廣告很爽,對自己的內容有掌控權更爽。

當然,付費服務並不是就是完全沒問題。它可能一樣會追蹤你,有些甚至還是會給你廣告。但至少,付費是提供廣告收益之外的收入選項,讓服務商不那麼依賴廣告收入,更專心在把產品做好上面。

使用可以擋廣告的 DNS 服務

什麼是 DNS?DNS 是每個上網的人都會用到的服務,負責把像 www.example.com 這樣的網址轉換成 123.45.67.89 這樣的 IP 位址。如果沒有 DNS 服務的話,那我們就沒辦法使用網址來上網,必須要記得每一個網站的 IP 位址才可以。一般預設的 DNS 服務都是提供網路的電信商,或有些人會設成 Google 的 8.8.8.8 或 Cloudflare 的 1.1.1.1,都是相當不錯的 DNS 服務。

然而,DNS 不只是拿來查 IP 位址而已,也可以反過來,「不查」IP 位址。最近幾年興起了用 DNS 服務來擋廣告與追蹤器等的潮流,像是 PiHole、AdGuard Home、AdGuard DNS、NextDNS 等軟體與服務紛紛出現,原理就是把所有廣告商的相關網址全部對應到無效的 IP 位址,例如 0.0.0.0,讓裝置端連載入廣告內容都沒辦法。擋掉廣告的同時,也省下了數據流量與運算資源,使網頁載入更快也更安全。

我在用 DNS 擋廣告是我之前寫的關於擋廣告 DNS 服務的文章。我自己是用 NextDNS,一個雲端的 DNS 服務。選擇用雲端服務是因為設定較方便,在每台裝置上都安裝它提供的描述檔或直接設 DNS 伺服器位址就好,不需要再另外隨身帶一台裝置跑 PiHole,或者設定自家網路的 VPN。

其實如果家裡有固網的話,在家架一個 PiHole 或 AdGuard Home 伺服器,然後出外時用 VPN 連回家是不錯的。Ping 值(網路延遲)可能會稍微高一點,但也不是不可接受。如果不想用非 ISP 的 DNS 服務的話,就得用這種方法,或者自己去雲端架伺服器了。如果有技術底子的話,可以挑戰看看。

安裝瀏覽器內容阻擋器

這是最後的擋廣告手段了。上網瀏覽網頁的運作原理大概是這樣的:我們在瀏覽器的網址列輸入網址後,瀏覽器會先跟 DNS 服務取得 IP 位址,然後再向位在該 IP 位址的伺服器取得網頁原始碼,以 HTML(超文本標記語言)文件為主。

HTML 文件是由許多元素結合起來的樹狀結構,除了像標題、段落等文字元素之外,還有像是圖片與影片等的多媒體元素。這些多媒體元素通常不會直接存在 HTML 文件裡面,而是放在別的網址;當瀏覽器讀取 HTML 文件碰到多媒體元素時,它就會再去它們的網址取得它們的內容,然後跟其它的 HTML 元素一起渲染到畫面上。前面的 DNS 擋廣告方法可以在這個步驟擋掉大部分的廣告內容,因為這些廣告通常是放在廣告專用的伺服器位址上。

但只用 DNS 擋廣告並不是完美的解法,因為那只是讓瀏覽器沒辦法載入廣告資源。就算讀不到資源,瀏覽器還是會試著把該元素渲染出來,結果就是一個空白的方塊卡在原本廣告的地方。我們都知道網頁廣告可以有多惱人,尤其是蓋板或破壞內容排版的那種。就算這些廣告變成空白的方塊,閱讀網頁的體驗還是差了一點。

瀏覽器的內容阻擋器是一種瀏覽器的擴充套件,能告訴瀏覽器載入或渲染網頁時跳過特定的元素,讓它連空白方塊都不顯示出來。如此一來,網頁內容的排版就會好看很多。

如果內容阻擋器那麼強大,為何還要用 DNS 擋廣告呢?

  1. DNS 擋廣告是擋全系統的,所以像是手機 app 裡的廣告也可以一起擋掉。內容阻擋器只作用於瀏覽器內。
  2. 內容阻擋器有時只能隱藏元素,還是會載入廣告資源。

反之,內容阻擋器也有一些優勢:

  1. 剛剛提到的,讓網頁排版更美觀。
  2. 除了廣告,還可以擋特定元素,例如留言區塊。

我自己用的瀏覽器是 Safari,裝的內容阻擋器有 Wipr1Blocker。前者簡單有效,後者自訂程度高,且可以另外擋色情與留言等網頁內容 。

擋不住的置入性廣告與原生廣告

置入性廣告因為是直接嵌入在內容裡,算是內容的一部分,所以無法去除。反正我也不討厭置入性廣告,因為它通常有經過內容創作者的處理,在文本上較有趣;在商業面來說,置入性廣告是由廣告業主直接付錢給內容創作者,所以當我們看置入廣告時,也算是間接支持、變相贊助內容創作者,可以說是三贏的局面。

另一方面,原生廣告指的是在社群平台/內容平台上,偽裝成一般內容的廣告。比如說 Instagram 動態消息頁面,就是每隔三、四則使用者貼文就插入一則廣告貼文。由於長得跟一般貼文一模一樣,所以很難用內容阻擋器來擋;而因為它是第一方廣告,伺服器位址跟其它內容一樣,所以用 DNS 也沒辦法擋。

原生廣告雖然聽起來跟置入廣告很像,但本質上完全不一樣。原生廣告賺錢的不是內容創作者,而是平台。Facebook 等社群平台就是用這種方式來賺錢,卻不把賺到的錢分給內容創作者,才會面臨到像是澳洲的《媒體議價法》的出現

總結

我擋廣告的三種方法分別屬於資訊的上游、中游與下游:

  1. 使用付費服務是從資訊的源頭去除廣告的存在。
  2. 用 DNS 擋廣告是在取得資訊位址的時候跳過廣告相關的位址。
  3. 使用瀏覽器的內容阻擋器是在瀏覽器準備載入與渲染內容時跳過廣告元素。

這三種方法可以去掉絕大多數的網路廣告,除了兩種之外——置入廣告與原生廣告。這基本上無解。