[완료] squid를 통한 proxy 구성 관련 질문 입니다.

rarion의 이미지

아직 1년이 채 되지 않은 신입 리눅스 엔지니어 입니다.

첫글이 질문이라 죄송스럽네요. 사설은 일단 뒤로 하고..

웹방화벽 도입을 하기 앞서 프록시 구성을 통한 방식으로 amam.co.kr 도메인의 쿼리를 프록시 서버가 받아서
다른 곳에 존재하는 실제 웹서버로 전달하는 형태를 취하고자 몇일 째 google 검색을 하고 있는데,
뾰족한 방법이 나오지 않아 이렇게 문의 드립니다.

일반적인 네트웍 중간에서 트래픽을 걸러주는 역할로도 이와 같이 프록시를 사용되고 있다고 알고 있습니다.

일단 검색한 바에 의하면 porxy 방식 중 Transparent Proxy(일명 투명 프록시) 설정을 통해 진행 하는 것으로 생각 됩니다.

제가 현재 진행하고자 하는 구성은 아래와 같습니다.

클라이언트들의 요청 --> 프록시 서버 --> 다수의 실제 웹 서버
예)amam.co.kr 질의 amam.co.kr
test.com

이와 같은 경우 해당 도메인의 DNS를 프록시 서버로 향하게끔 변경 후 프록시 서버에 설정이 이루어져야 하는데
프록시에서의 포워딩 기능을 어찌 처리해야 할지 감이 오질 않습니다. 제가 근접해서 찾은 해답은 아래라고 생각 되는데 이 부분도 어디로 포워딩 하는 설정은 찾아보기 힘드네요.

================================================
이 중에서 squid의 버전이 2.4에서 2.6으로 올라가면서 transparent proxy에 대한 정의 부분이 변경되었다.

이를 구현하기 위해서는 다음과 같이 설정해야 한다.

1. 방화벽 스크립트에 다음을 추가

/sbin/ebtables -t broute -A BROUTING -p IPv4 --ip-protocol 6 --ip-destination-port 80 -j redirect --redirect-target ACCEPT
/sbin/iptables -t nat -A PREROUTING -i br0(브리지 이름) -p tcp --dport 80 -j REDIRECT --to-port 3128

2. squid.conf에서 다음 부분을 수정

http_port 3128을 http_port 3128 transparent로 수정
============================================

이전 테스트시 apache를 통한 프록시 구성을 진행 했으나, 한계 점이 있어 위와 같은 방법을 찾고 있는 중이오니 도움 및 조언 부탁 드립니다.

========================================================

역시나 사내에 해결방법을 알고 계신분이 계셨습니다.. squid로 구성이 가능하다고 하네요.
squid ssl 처리에 대한 부분 다시 확인 할 부분이 있어 일단 완료 시킵니다.

ymir의 이미지

tproxy 버전에 따라 iptables 정책이 조금씩 다릅니다.
커널이 최신 버전이라면 Documentation/networking/tproxy.txt 를 참고하시면 됩니다.
(ebtables 는 proxy 를 bridge 로 구성할 때에만 필요합니다.)

위 정책은 tproxy2 에선가 썼던 것으로 보이는데...
bridge 를 통과하는 패킷을 squid 로 전달하기 위해..
우선 ebtables 정책을 통해 bridge 를 통과하는 패킷을 장비로 routing 시키고..
원래의 dport 를 squid 가 listen 하고 있는 port 로 nat 시켜..
squid 가 client 로부터의 패킷을 받을 수 있도록만 해주면 끝입니다.

squid 와 같은 proxy appl. 에서는 nat 세션에서 원래의 목적지 주소를 가져와서..
client ip 로 bind 하고 목적지로 connect 를 할겁니다.
그래서 listen 할 port 정보 외에는 별다른 정책이 필요 없죠.

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

rarion의 이미지

이해 하는데 조금 어려움이 있어 재 질문 드립니다.

ebtables 설치 후 아래와 같이 정책 지정 했습니다.

$IPTABLES -t nat -A PREROUTING -s 0.0.0.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128
$ebtables -t broute -A BROUTING -p IPv4 --ip-protocol 6 --ip-destination-port 80 -j redirect --redirect-target ACCEPT

그 후 /etc/hosts 파일에 실제 웹서버 IP와 도메인 입력 해준 후 테스트시 페이지가 열리는 듯 보였으나,

또 얼마 후 캐시 문제인지 열리지 않고 있습니다.

br 셋팅을 따로 해주어야 하는 것일까요..?

아래 내용은 어떠한 설정이 필요한 것인지 궁금 합니다.
----------------------------
squid 와 같은 proxy appl. 에서는 nat 세션에서 원래의 목적지 주소를 가져와서..
client ip 로 bind 하고 목적지로 connect 를 할겁니다.
----------------------------

감사합니다.

ymir의 이미지

squid 와 같은 응용 프로그램에서는 별도로 설정할 게 없다는 뜻입니다.

ebtables 설정도 필요한 걸로 봐서, 중간에 장비를 bridge 로 구성하신 듯 한데...
이 경우에는 일반 g/w 와 유사하게, routing table 을 잡아줘야 합니다.

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

rarion의 이미지

squid에서는 별도 설정은 필요 없군요.

짧은지식으로는 프록시 서버에 특정 도메인의 웹서버 IP를 어딘가에 정의 해주어야 그 쪽으로 포워딩 된다고 생각이 들었습니다. 그런 설정 내용이 squid 설정 외에 필요로 하지 않나요?

ebtables 설정을 한 이유는 제가 찾아본 자료들 참고 했을때 브릿지 형태로 구성을 해야 하지 않을까 싶어서 적용해 본 내용입니다.

이렇게 해보면 될까? 하면서 계속 여러가지 방법으로 적용해 보는 중이구요.

이거 설정내용을 요청드리는 것과 같은 질문을 드리고 있네요.

다시 한번 정리 해서 질문 드리자면, amam.co.kr의 DNS 프록시 서버로 변경한 후 아래처럼 구성하고자 합니다.

클라이언트에서 도메인 질의 ==>> 프록시 서버 ==>> 실제 웹 서버

그래서 필요한 방법들을 찾는 중이구요. 찾다보니 좋은 방법중에 하나 squid를 이용하고자 하는데, tporxy 통해서
진행 해보고자 했던 것이구요.

혹 위와 같은 구성에 좋은 방법이 있으시다면 조언 부탁 드립니다.

ymir의 이미지

DNS 프록시 얘기가 나오는 걸로 봐서, 원래 하시고자 하는 것에 squid 는 맞지 않을 것 같군요.
squid 는 웹 서버용 proxy/cache 로, 추가로 transparent proxy 를 쓰는 이유는..
웹 서버에 실제 client 의 ip 가 접속한 것처럼 보이게 하기 위해서 입니다.
client 가 web 에 접속하는 걸 중간에서 가로채 데이터를 대신 전달해 주지만 ..
client 에게는 실제 web server 의 ip 가, web server 에게는 실제 client 의 ip 가 전달됩니다.
게다가 bridge 를 쓰면 기존의 네트워크 환경 설정에 변경을 할 필요가 없으니 장비의 설치/제거도 간편하죠.

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

rarion의 이미지

잘못 생각 했던 부분들이 있는 것 같습니다.
부가적인 기능 필요없이 하고자 하는 것들은 프록시 서버를 통해서 단순히 80 / 443 port를 redirect 해주면
그 외에 아이피를 노출 시키지 않거나 하는 기능들은 필요가 없네요.

DDoS 장비들 처럼 방어장비의 기능이 필요로 하는 것이 아니기에..


헤공.. ymir님 여유 있으실때 사용하시는 메신져 통해서 질문 좀 드릴 수 있을까요?

ymir의 이미지

네트워크 환경도 그렇고.. 좀 더 상황을 구체적으로 설명해 보심이 좋을 듯 싶네요.
단순히 실제 웹 서버의 IP 를 감추는게 목적인지 ..
특정 도메인의 쿼리를 여러개의 서버로 분산 시키려는게 목적인지 ..
방화벽이나 L4 등으로도 할 수 있는 옵션이 많습니다.

squid 로도 특정 웹서버로 타겟을 바꿀 수는 있지만 ..
지금 지원되고 있는 기능인지, 아니면 코드를 수정해야 하는지 확인이 필요할겁니다.
심지어 웹방화벽에서도 proxy 는 물론 reverse proxy 까지 지원되는 경우가 있는데..
본래의 목적에 대한 접근법이 맞는지부터 검토를 해보심이 좋을 듯 합니다.

그리고 죄송합니다만 메신저는 용도가 제한되어 있어, 외부에 오픈하지 않습니다.
더구나 다양한 의견을 접하고, 검증할 수 있는 기회를 놓치는 셈이라 추천드리고 싶지는 않습니다.
오픈하기 어려운 내용이면 메일을 주시거나, @ymirzz 로 트윗 주세요.
메일은 사용자 프로필의 연락처 탭에 있습니다.

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

rarion의 이미지

잘 모르는 상황에서 답답한 마음에 테스트 요청이 계속 들어오고 있어 마음이 급해져 큰 우를 범하고 말았네요.
정확한 구성을 이해하지 못한 상태에서 두서 없는 질문을 했던 것이 아닌가 싶네요. 로드 분산 등의 형태는 아닙니다.

네트웍 구성 중 가장 중요한 웹방화벽을 빼고 질문을 드렸었습니다.

클라이언트 PC =>> 외부 네트웍 =>> 웹방화벽,프록시 =>> 다른 대역에 존재하는 웹서버

웹방화벽과 프록시를 같이 묶어둔 이유는 프록시 서버의 바로 위 상단에 웹방화벽이 존재하여 DNS 변경한 도메인들이 프록시 서버로 트래픽이 전달될때 모니터링 / 필터링 진행하게 됩니다.

이 경우 프록시 서버가 없다면 같은 대역의 같은 스위치에 실제 웹서버가 존재해야만 하지만, 프록시를 둠으로써
다른 대역에 있는 실제 웹서버로 해당 패킷들을 전달해 주는 구성을 테스트 중에 있습니다.

프록시를 사용하는 가장 큰 이유는 공유형으로 IP 대역이 다른 여러 서버들을 한대의 웹방화벽을 공유할 수 있게하는게 목적입니다.

트래픽을 우회하여 웹방화벽을 거치게끔 하는 것이죠. 방화벽 서비스가 주목적 입니다..
여러대의 방화벽을 놓지 않기 위한 비용절약의 일환 인 것이죠.

이 같은 경우엔 브릿지 형태의 구성이 되는 것일까요?

ymir의 이미지

다른 대역에 있는 웹서버란게, 내부 네트워크의 서로 다른 사설 IP 대역인지..
인터넷 건너 다른 서버를 뜻하는건지 모르겠군요.

예를 들면 a.com, b.com, c.com 등이 각자 IP 를 갖고 인터넷 여기저기 지점으로 흩어져 있었는데...
일단 얘네들은 DNS 설정 등을 통해 일단 WAF 가 있는 본점 쪽으로 트래픽을 몰리게 하고..
WAF 통과 후에 실제로 얘네들이 있는 곳으로 트래픽을 돌리고 싶다는 건가요..?

도입하시려는 웹방화벽이 어디까지 기능이 지원되는지는 모르겠습니다만...
웹방화벽 자체가 프락시 형태로 동작하는 경우가 많기 때문에...
이 경우라면 원하시는 기능과 중복되는 듯 합니다.
(사실 WAF 와 squid 는 기능적으로 유사한 면이 많습니다.)
만약 WAF 가 domain name 과 ip 를 임의로 매핑할 수 있다면 ..
WAF 를 그냥 routing 모드로 놓고, G/W 형태로 구성해서 다시 인터넷 구간으로도 트래픽을 돌릴 수 있을 것 같기도 하네요.

WAF 든 proxy 든 transparent 한 경우라면, 다시 internet 구간으로 나간 패킷은 돌아오지 않을테니..
bridge 구성은 어렵겠군요.

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

rarion의 이미지

내부 네트웍은 아니구요 서로 다른 공인 아이피를 가지고 있고, C클래스로 나누어져 있는 대역이 다르다는 것 입니다.

a.com : 111.111.111.111
b.com : 55.55.55.55
c.com : 222.222.222.222
proxy : 99.99.99.99

프록시로 향해지는 a.com / b.com / c.com 들의 99.99.99.99 프록시서버의 IP로 DNS 변경을 통해
상단에 있는 웹방화벽을 거쳐 필터링 하겠다는 것 입니다. 또 99.99.99.X/? 의 하나의 대역에 존재하는 아이피들만이 아닌..
기존에 운영중이던 웹서버들의 아이피 변경없이 웹방화벽을 같이 써보자 라는 취지 입니다.

웹방화벽 이라는 것이 웹 구문에 대한 필터링이므로 Inbound 되는 것에 대한 필터링은 필요하나 outbound 패킷들은 굳이 웹방화벽을 되돌아 갈 필요는 없을 것 같습니다.

어익후.. WAF 라는게 뭘까 싶어서 검색 해봤네요. ㅎㅎ

저도 사실 방화벽 업체측에서는 방화벽에서는 그런 기능이 제공되지 않기 때문에 요청 준 사항이라 여러방면으로 알아보고 있는 중입니다. ㅎㅎ

ymir의 이미지

WAF 자체가 proxy 형태로 동작하기 때문에, 그냥 될 것 같기는 한데... 안되나 보군요.. ㅎㅎ ;;
또 다른 proxy 장비는 필요 없을 것 같고..
그냥 WAF 뒤에 gw 하나 두고 iptables 의 NAT 등으로 실제 서버의 ip 로 변환해서 ..
메인 방화벽을 통해 인터넷 구간으로 던져보면 어떨까 싶네요..
어쨌든 bridge 나 tproxy 등은 그냥 잊어버리셔도 되겠네요..

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

rarion의 이미지

음.. 간략하게 방법 좀 소개 해주실 수 있을까요?

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A PREROUTING -p tcp -i eth0 --dport 80 -j DNAT --to x.x.x.x:80

위와 같은 형태로 적용 해보았으나, 정상적으로 전달이 이루어지지 않고 있네요.

ymir의 이미지

폐쇠망 꾸며서 작업하거나 할 때, 보통 남는 방화벽 장비들 줏어다가 써서리.. iptables 쪽은 잘 알지는 못합니다.
게다가 지금은 놀고먹는 처지라.. 테스트 해볼만한 여건이 안 되어 답을 드리기는 어렵겠네요.
다만, 다음과 같은 시나리오라면.. 어케 되지 않을까 싶네요. (무책임 -0-)

a.com 의 dns query 가 11.11.11.11 이고 실제 ip 가 22.22.22.22 라고 한다면..
11.11.11.11 로의 접속을 메인 방화벽이 받아 172.16.1.1 과 같은 사설 IP 로 NAT 시키고..
WAF (172.16.1.253) 에서는 a.com 의 웹서버를 172.16.1.1 로 설정하면...
사용자가 a.com (11.11.11.11) 로 접속한 경우, FW 를 통해 WAF 까지 전달 되고...
WAF 에서는 a.com 의 (가상) IP 인 172.16.1.1 로 접속을 시도할겁니다.
그럼 WAF 뒤에 또 다른 방화벽을 GW(172.16.1.254) 용으로 하나 둬서...
WAF(172.16.1.253) 에서 172.16.1.1 로의 접속을.. 다시 실제 IP 인 22.22.22.22 로 바꿔서..
메인 FW 를 통해 인터넷 구간으로 던지면, 원하시는 대로 접속이 이루어지지 않을까 생각되네요..
FW - WAF - GW 가 삼각형 모양으로 배치됩니다.
client - (internet) - fw - waf 로 하나의 connection 이 만들어지고..
waf - gw - fw - (internet) - server 로 또 하나의 connection 이 만들어지도록 구성하는거죠.

제가 컴맹이라( __)a 설명이 난잡한 것 같기는 한데, 어쩌면 GW 는 필요없을 수도 있고..
아니면 WAF 에서 그냥 지원되고 있는 기능일수도 있을 겁니다.
비슷한 장비는 만들어 봤어도, 실제로 현장에서 쓰는 건 SE, 영업쪽이 더 노하우(?)를 갖고 있어서리...
제 능력으로는 더 이상 답변 드리기는 어렵겠네요.
그럼 이만..

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

되면 한다! / feel no sorrow, feel no pain, feel no hurt, there's nothing gained.. only love will then remain.. 『 Mizz 』

rarion의 이미지

지금까지 답변 주신 것 매우 감사하게 생각하고 있습니다.

알듯 모를듯 하여 조금 답답한 감이 없지않아 있지만.. 재미있네요 새로운 것을 배운다는 것은 ^^

감사합니다. !

ydhoney의 이미지

뭔가 문제에 대한 접근방법이 조금 어긋나 있다고 판단되는데요.

일단 위에서 시키는 일이 "프록시" 라는 이름이 붙었다고 무조건 squid를 쓸 필요는 없지않나 싶은 생각이 듭니다.

기술적으로 보면 대략 reverse proxy 같은걸 구성하시려는게 아닌가 싶구요. (아니시려나;;)

일단 보편적인 상용 웹방화벽들은 apache+mod_proxy+mod_security+..... 기반으로 동작하거든요. 웹방화벽 대용이라면 일단 squid를 쓸 문제가 아닐거에요 아마;;

--
http://cafe.naver.com/sedarak

rarion의 이미지

감사합니다. reverse proxy 도 한번 찾아보며 구성 방법에 대해 찾아보는 중에 있습니다.
제가 원하는 구성의 느낌과 비슷한 방식이 아닐까 싶기도 하네요.

참 난감한게.. 저희쪽에 들어와있는 업체에서 사용하는 방식과 동일한데 그 업체에 기술적인 부분을 물어보기도 뭐하고 ㅜ _ㅜ

여튼 열심히 좀 더 찾아보고 문의 드리겠습니다.

사랑천사의 이미지

자세히 설명 드리긴 그렇지만 IPVS 에 대해서 알아 보세요. 만약 a, b, c 웹서버가 전부 같은 역할을 하는데 IP 대역만 나눠져 있는 거라면...(그런데 그건 아닌 거 같네요.)
-- 사랑천사 --
LECL | Blog
yeosong@gmail.com
yeosong@gmail.com(네이트온) ysnglee2000(Skype)

사람천사

rarion의 이미지

답변 감사합니다. 같은 역할을 하고 있는 서버들을 공유하는 것은 아니구요.
각기 다른 지역의 서로 다른 웹서버들을 우회해서 웹방화벽을 공유하여 사용하면서 필터링하고 포워딩 하는 형태의 구성입니다.

DR 방식이던 온 곳으로 다시 돌아가던 전달만 이루어지면 되는 것인데.. 잘 안되네요. ㅜ_ ㅜ

rarion의 이미지

nat 로 ssl / web(80) port들의 패킷들을 웹섭로 던져주려면 어떤 설정들이 필요할까요?

혹은 다이렉트 라우팅을 하고자 할때.. 필요할 설정은 어떤방식이 있을까요..?

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.