728x90
반응형
시놀로지의 도커 를 이용하여 각종 서비스를 할수가 있습니다.
헌데 일부 서비스중 접속자의 IP가 누락됩니다.
바로 내부IP 에서 접속을 하였을때에는 127.0.0.1 로 접속 하였다고 로그가 찍히고
외부IP 에서 접속을 하였을때에는 172.x.x.x 로 접속 하였다고 로그가 찍힘니다.
도커 내부 IP가 찍혀서 로그가 나오게 됩니다.
라즈베리파이에서는 이런 현상이 없었습니다.
헌데 이번 서버 이전후 이런 현상을 확인하였고 오늘에서야 해결을 하였습니다.
#!/bin/bash
currentAttempt=0
totalAttempts=10
delay=15
while [ $currentAttempt -lt $totalAttempts ]
do
currentAttempt=$(( $currentAttempt + 1 ))
echo "Attempt $currentAttempt of $totalAttempts..."
result=$(iptables-save)
#위 않될때 아래걸로
if [[ $result =~ "-A DEFAULT_FORWARD -i docker0 -o docker0 -j ACCEPT" ]]; then
#if [[ $result =~ "-A DOCKER -i docker0 -j RETURN" ]]; then
echo "Docker rules found! Modifying..."
iptables -t nat -A PREROUTING ! -d 127.0.0.0/8 -m addrtype --dst-type LOCAL -j DOCKER
iptables -t nat -A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER
#iptables -t nat -A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER
#iptables -t nat -A PREROUTING -m addrtype --dst-type LOCAL ! --dst 127.0.0.0/8 -j DOCKER
echo "Done!"
break
fi
echo "Docker rules not found! Sleeping for $delay seconds..."
sleep $delay
done
Script to fix Docker iptables on Synology NAS
Script to fix Docker iptables on Synology NAS. GitHub Gist: instantly share code, notes, and snippets.
gist.github.com
위 스크립트를 시놀로지 작업스케줄러에 등록하면 된다고 합니다.
전 위의 스크립트를 적용시켜서 사용합니다.
# 은 위의 스크립트가 적용이 않되시면 앞에 #을 지우고 #을 넣고 실행하시면 됩니다.
728x90
반응형
'재미로 보는 글' 카테고리의 다른 글
FLASK 웹툰 목록에 관하여...[완료] (0) | 2022.11.15 |
---|---|
웹툰서버도 귀차니즘 때문에 만들긴 했네요. (0) | 2022.11.14 |
도커 OS 이미지가 업데이트가 되었네요. (0) | 2022.11.12 |
서버 이전후 의도치 않는 위치선점... (0) | 2022.11.09 |
하이클래스? 학교 알림 ... (0) | 2022.11.09 |