동경 127°53′, 북위 34°62′에 위치한다. 여수시에서 남서쪽으로 28㎞, 조발도에서 남서쪽으로 0.8㎞ 지점에 있다. 면적은 0.808㎢이고, 해안선 길이는 7.13㎞이다.
지명은 임진왜란 당시 수군이 일시 주둔하였던 곳이라 하여 ‘둔병도’라 부르게 되었다. 마을 앞 해안의 ‘둠벙(웅덩이)’에서 유래되었다는 설도 있다.
지질은 대부분 중성화산암류로 이루어져 있다. 섬의 지형은 남쪽은 낮은 산지이고, 북서쪽은 경사가 완만한 구릉지여서 농경지가 형성되어 있다. 북쪽 해안에 발달한 만을 중심으로 간석지가 넓게 펼쳐져 있고, 남쪽 해안에는 암석 해안이 발달해 있다. 자생하는 상록활엽수종은 참식나무, 구실잣밤나무, 생달나무, 후박나무, 동백나무 등이고, 주1 주2이 섬 전체적으로 서식하고 있다.
기온은 겨울인 1월은 평균 2.1℃, 여름인 8월은 평균 24.8℃이다. 연강수량은 1,247㎜이다.
마을은 섬의 남서쪽에 있는 선착장 주변에 둔병마을 한 곳이 형성되어 있다. 임진왜란 당시 ‘성주 배씨’가 순천에서 난을 피해 은신처로 처음 입도한 것으로 전해온다. 남서쪽에 위치한 하과도(下瓜島)와 교량으로 연결되어 있다. 문화유산으로는 주3 유적이 발견된 바 있고, 민속문화로 음력 정월 대보름에 지내는 마을 당제가 전해져 온다.
2023년 9월 기준으로 인구는 38명(남 17명, 여 21명)이 거주하고 있으며 세대수는 25세대이다. 취락은 하과도와 마주 보는 남쪽 해안에 집중해 있다. 주민들은 대부분 농업과 어업을 겸하고 있다. 주요 농산물은 고구마 · 마늘 · 보리 · 쌀 등이다. 연근해에는 장어 · 멸치 · 문어 등이 어획되며, 김과 꼬막 등의 양식도 행해진다.
교통은 국도 77호선을 이용하여 여수시 화양면과 고흥군 영남면 쪽으로 차량 이동이 가능하다. 전라남도에서 여수시 돌산에서 고흥군 영남으로 해상 교량을 거쳐 연결되는 도로를 ‘백리섬섬길’로 명명하여 관광자원화하고 있다. ‘백리섬섬길’ 내에 둔병도와 조발도를와 연결하는 둔병대교, 둔병도와 낭도를 연결하는 낭도대교가 설치되어 있다. 낭도에서 둔병도 선착장으로 다니는 배가 있다.