La commune de Viry est située dans le sud du département du Jura, à la lisière de celui de l'Ain, à 10 km d'Oyonnax (Ain) et à 20 km de Saint-Claude, sur la route menant à La Pesse et au nord du Haut-Jura (Les Rousses). Le village se trouve sur un plateau qui porte aussi Rogna. Il est à l'entrée du val du même nom se terminant par un lac. Un autre lac, celui de Sous-le-Rosay (un hameau de Viry), se trouve dans un vallon parallèle. Au sud-est du territoire communal, on trouve une longue paroi rocheuse ayant autrefois porté la forteresse de la Bastie. À l'extrémité nord de cette paroi s'ouvre la combe de la Vie Fourche, traversée par la route menant aux Bouchoux et à La Pesse.