애드블럭을 제거하거나 잠시 꺼주세요.


※ 자료설명 ※

출저 : https://www.reddit.com/r/pihole/comments/9w5swx/i_think_ive_managed_to_block_youtube_ads_with/

 

 

인터넷에서 찾은 방법 중 가장 확실한 방법입니다.

일단 파이홀이 설치되어 있어야 합니다.

저는 노트북 10만원짜리 하나 구해서 리눅스 서버로 돌리고 있습니다.

 

그리고 파이홀을 설치합니다.

 

파이홀 설치후 

/etc/hosts 파일을 아래와 같이 수정합니다.

저는 KT 기가인테넷을 사용중입니다.

 

172.217.26.14 manifest.googlevideo.com

 

그리고 dnsmasq를 재실행합니다.

그리고 ipconfig /flushdns 를 실행하면 dns 정보가 변경됩니다.

 

그럼 유튜브 광고가 DNS단에서 자동으로 해제됩니다.

 

원리는 아래와 같습니다.

 

유튜브는 광고와 실제 영상이 같은 아이피에서 송출됩니다.

따라서 아이피를 차단하면 광고 뿐만 아니라 영상이 함께 나오지 않게 됩니다.

그런데 알고보면 iad.*\.googlevideo\.com 의 주소 형태로 광고서버가 별도로 존재하는 것을 발견할 수 있습니다.

 

그리고 광고가 시작되기 직전 iad 호스트 이름을 반환하는 manifest.googlevideo.com에 대한 dns 쿼리가 발생하는 것을 발견하게 됩니다.

 

파이홀에 ssh로 접속하여 아래와 같이 명령어를 입력합니다.

 

pihole_youtube_block.png

 

해당 주소를 역방향 조회를 하면 아래와 같이 실제 주소가 나오게 되네요.
 

14.26.217.172.in-addr.arpa      name = nrt20s02-in-f14.1e100.net.

 

manifest.googlevideo.com의 아이피를 찾아서 보겠습니다.

이 글을 쓰기까지 manifest.googlevideo.com를  nslookup으로 아이피를 찾아보면 172.217.26.14가 나옵니다.

 

해당 정보를 이용하여 manifest.googlevideo.com를 조회할 경우, 구글의 원래 manifest.googlevideo.com 주소가 아니라 바로 172.217.26.14에 영상을 호출시켜서 중간 광고를 무력화 시킬 수 있습니다.

 

nslookup 역방향 조회

 

 

전체적인 방법

1. cmd창에서 nslookup manifest.googlevideo.com 명령을 실행합니다.

2. 반환하는 IP를 nslookup합니다.

3. 반환 된 호스트 이름 중 하나가 iad * .googlevideo.com 인 경우 올바른 경로에 있습니다. 혹시 일부 사용자는 iad * .googlevideo.com 가 나오지 않고 단일 호스트 이름이 반환될 수 있습니다. 그래도 괜찮습니다.

4. pi-hole의 / etc / hosts 파일을 편집하고 위에서 얻은 IP 주소를 입력합니다.

5. dnsmasq를 다시 시작하십시오.

 

 

두번째 방법

 

https://github.com/kboghdady/youTube_ads_4_pi-hole

 

이럼에도 불구하고 광고가 나올 시에는 해당 스크립트로 로그를 분석하여 간혹 나오는 광고를 분석하여 블랙 리스트에 추가합니다.

 

pihole_youtube_block2.png

 

 

3번째 방법

 

#!/bin/sh
# This script will fetch the Googlevideo ad domains and append them to the Pi-hole block list.
# Run this script daily with a cron job (don't forget to chmod +x)
# More info here: https://discourse.pi-hole.net/t/how-do-i-block-ads-on-youtube/253/136

# File to store the YT ad domains
FILE=/etc/pihole/youtube.hosts

# Wolfram Alfa AppID
APPID=Your-AppID

# Fetch the list of domains, remove the ip's and save them
curl 'https://api.hackertarget.com/hostsearch/?q=googlevideo.com' \
| awk -F, 'NR>1{print $1}' \
| grep -vE "redirector|manifest" > $FILE

# Replace r*.sn*.googlevideo.com URLs to r*---sn-*.googlevideo.com
# and add those to the list too
curl "http://api.wolframalpha.com/v2/query?input=googlevideo.com&appid=${APPID}&format=plaintext&podstate=WebSiteStat$
| grep -Po "r\d+---sn-.+.googlevideo.com" >> $FILE

# Scan log file for previously accessed domains
grep "r*\.googlevideo\.com" /var/log/pihole*.log \
| awk '{print $8}' \
| grep -vE "redirector|manifest" \
| sort | uniq >> $FILE

# Add to Pi-hole adlists if it's not there already
if ! grep $FILE < /etc/pihole/adlists.list; then echo "file://$FILE" >> /etc/pihole/adlists.list; fi;

# Update
pihole -g

 

sh 스크립트로 만들어서 실행



※ 자료현황 ※
등록일 : 2019-08-11 18:05:48 / 문서노출 : 2171 / 다운로드 2


※ 파일 다운로드 ※
파일 이름 : pihole_youtube_block.png (13.9KB)